成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術(shù)文章
文章詳情頁

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

瀏覽:73日期:2023-03-06 13:26:33
springboot static調(diào)用service為null

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

Java中該注解的說明:

@PostConstruct該注解被用來修飾一個(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中的方法。

@Componentpublic 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清空。

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

@Componentpublic 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è)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 亚洲欧美成人综合久久久 | 欧美另类孕交 | 91亚洲国产成人久久精品网站 | 久久精品免费播放 | 欧美性视频一区二区三区 | 九九精品视频在线观看 | 午夜黄色毛片 | 香蕉久久久 | 亚洲 欧美 在线观看 | 欧美成人精品一级高清片 | 女人张开腿让男人捅视频 | 中文无线乱码二三四区 | 在线视频久草 | 黄色网址网站 | 成人国产精品高清在线观看 | 免费日本在线视频 | 高清欧美不卡一区二区三区 | 中文字幕中文字幕中中文 | 亚洲第一页乱 | 亚洲精品久久玖玖玖玖 | 亚洲第一免费播放区 | 久久只有这才是精品99 | 日本视频播放免费线上观看 | 国产乱码精品一区二区三区四川人 | 一级黄色大片 | 欧美精品一区二区三区免费 | 99视频精品全国免费 | 国产亚洲精品一区二区在线播放 | 日韩一级欧美一级在线观看 | 高清精品女厕在线观看 | 黄色免费看片网站 | 老司机黄色影院 | 国产欧美成人xxx视频 | 九九精品视频在线观看 | 亚洲一区二区免费 | 成年人国产 | 久久久免费观看 | 精品一区二区三区中文 | 一级女性全黄久久生活片 | 欧美精品一区二区精品久久 | 成人性视频免费网站 |