最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot 如何解決static調(diào)用service為null

 更新時(shí)間:2021年06月09日 10:13:18   作者:離別又見(jiàn)離別  
這篇文章主要介紹了springboot 如何解決static調(diào)用service為null的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

springboot static調(diào)用service為null

@PostConstruct注解好多人以為是Spring提供的。其實(shí)是Java自己的注解。

Java中該注解的說(shuō)明:

@PostConstruct該注解被用來(lái)修飾一個(gè)非靜態(tài)的void()方法。被@PostConstruct修飾的方法會(huì)在服務(wù)器加載Servlet的時(shí)候運(yùn)行,并且只會(huì)被服務(wù)器執(zhí)行一次。PostConstruct在構(gòu)造函數(shù)之后執(zhí)行,init()方法之前執(zhí)行。

通常我們會(huì)是在Spring框架中使用到@PostConstruct注解 該注解的方法在整個(gè)Bean初始化中的執(zhí)行順序:

Constructor(構(gòu)造方法) -> @Autowired(依賴注入) -> @PostConstruct(注釋的方法)

實(shí)戰(zhàn):

在靜態(tài)方法中調(diào)用依賴注入的Bean中的方法。

@Component
public class LeaveCode {
    @Autowired
    private IPlaLeaveApplyService plaLeaveApplyService;
    public static LeaveCode leaveCode;
    /**
     * 解決 static方法調(diào)用  注入的service為null
     */
    @PostConstruct
    public void init(){
        leaveCode = this;
        leaveCode.plaLeaveApplyService = this.plaLeaveApplyService;
    }
 }

SpringBoot 靜態(tài)類引入service 空指針/NULL

Spring注入service后,正常情況下非靜態(tài)方法是可以正常使用注冊(cè)的service的,當(dāng)時(shí)用靜態(tài)類引用的時(shí)候,靜態(tài)類static方法會(huì)將spring注入的service清空。

造成引用空指針的情況,如何解決呢?

@Component
public class UserUtils {
    @Autowired
    private UserService userService;
    private static UserUtils userUtils;
 
    @PostConstruct
    public void init() {
        userUtils = this;
        userUtils.userService = this.userService;
    }
}

使用:

User user = userUtils.userService.getUser(loginCode);

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MyBatis框架簡(jiǎn)介及入門案例詳解

    MyBatis框架簡(jiǎn)介及入門案例詳解

    MyBatis是一個(gè)優(yōu)秀的持久層框架,它對(duì)jdbc的操作數(shù)據(jù)庫(kù)的過(guò)程進(jìn)行封裝,使開(kāi)發(fā)者只需要關(guān)注SQL本身,而不需要花費(fèi)精力去處理例如注冊(cè)驅(qū)動(dòng)、創(chuàng)建connection、創(chuàng)建statement、手動(dòng)設(shè)置參數(shù)、結(jié)果集檢索等jdbc繁雜的過(guò)程代碼,本文將作為最終篇為大家介紹MyBatis的使用
    2022-08-08
  • Spring Boot使用Value注解給靜態(tài)變量賦值的方法

    Spring Boot使用Value注解給靜態(tài)變量賦值的方法

    這篇文章主要介紹了Spring Boot使用Value注解給靜態(tài)變量賦值的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Java反射及性能詳細(xì)

    Java反射及性能詳細(xì)

    這篇文章主要介紹了Java反射及性能,現(xiàn)如今的java工程中,反射的使用無(wú)處無(wú)在。無(wú)論是設(shè)計(jì)模式中的代理模式,還是紅透半邊天的Spring框架中的IOC,AOP等等,都存在大量反射的影子。下面我們就對(duì)該話題進(jìn)行詳細(xì)介紹,感興趣的小伙伴可以參考一下
    2021-10-10
  • Java中關(guān)于 null 的幾種處理方式詳解

    Java中關(guān)于 null 的幾種處理方式詳解

    這篇文章主要介紹了Java中關(guān)于 null 的幾種處理方式,關(guān)于 null ,你應(yīng)該知道下面這幾件事情來(lái)有效的了解 null ,從而避免很多由 null 引起的錯(cuò)誤,具體細(xì)節(jié)跟隨小編一起學(xué)習(xí)下吧
    2021-10-10
  • 如何對(duì)?Excel?表格中提取的數(shù)據(jù)進(jìn)行批量更新

    如何對(duì)?Excel?表格中提取的數(shù)據(jù)進(jìn)行批量更新

    這篇文章主要介紹了如何對(duì)Excel表格中提取的數(shù)據(jù)進(jìn)行批量更新操作,本文通過(guò)示例代碼介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • spring aop action中驗(yàn)證用戶登錄狀態(tài)的實(shí)例代碼

    spring aop action中驗(yàn)證用戶登錄狀態(tài)的實(shí)例代碼

    本篇文章主要介紹了spring aop action中驗(yàn)證用戶登錄狀態(tài)的實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • 一文搞懂Spring中@Autowired和@Resource的區(qū)別

    一文搞懂Spring中@Autowired和@Resource的區(qū)別

    @Autowired?和?@Resource?都是?Spring/Spring?Boot?項(xiàng)目中,用來(lái)進(jìn)行依賴注入的注解。它們都提供了將依賴對(duì)象注入到當(dāng)前對(duì)象的功能,但二者卻有眾多不同,并且這也是常見(jiàn)的面試題之一,所以我們今天就來(lái)盤它
    2022-08-08
  • Java使用IOC控制反轉(zhuǎn)的三種設(shè)計(jì)模式詳解

    Java使用IOC控制反轉(zhuǎn)的三種設(shè)計(jì)模式詳解

    這篇文章主要為大家詳細(xì)介紹了Java使用IOC控制反轉(zhuǎn)的三種設(shè)計(jì)模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Java 轉(zhuǎn)型(向上或向下轉(zhuǎn)型)詳解及簡(jiǎn)單實(shí)例

    Java 轉(zhuǎn)型(向上或向下轉(zhuǎn)型)詳解及簡(jiǎn)單實(shí)例

    這篇文章主要介紹了Java 轉(zhuǎn)型(向上或向下轉(zhuǎn)型)詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 整理Java的MyBatis框架中一些重要的功能及基本使用示例

    整理Java的MyBatis框架中一些重要的功能及基本使用示例

    這篇文章主要介紹了Java的MyBatis框架中一些重要的功能及基本使用示例整理,MyBatis可以幫助Java程序進(jìn)行強(qiáng)大的數(shù)據(jù)庫(kù)操作,需要的朋友可以參考下
    2016-04-04

最新評(píng)論

平远县| 大悟县| 衡东县| 白山市| 齐河县| 育儿| 闸北区| 金溪县| 玉环县| 磴口县| 疏勒县| 晋城| 眉山市| 株洲县| 镇康县| 崇仁县| 宁夏| 嘉善县| 巴楚县| 即墨市| 南投县| 酒泉市| 昌吉市| 如皋市| 江城| 云南省| 襄樊市| 凌源市| 新乐市| 鹰潭市| 资源县| 莱西市| 安化县| 葫芦岛市| 邵东县| 双柏县| 石柱| 揭东县| 邮箱| 岱山县| 枣庄市|