這篇文章主要介紹了靜態(tài)方法中調(diào)用Spring注入過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
創(chuàng)新互聯(lián)公司專注于網(wǎng)站建設(shè),為客戶提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)開發(fā)服務(wù),多年建網(wǎng)站服務(wù)經(jīng)驗(yàn),各類網(wǎng)站都可以開發(fā),成都品牌網(wǎng)站建設(shè),公司官網(wǎng),公司展示網(wǎng)站,網(wǎng)站設(shè)計(jì),建網(wǎng)站費(fèi)用,建網(wǎng)站多少錢,價(jià)格優(yōu)惠,收費(fèi)合理。
package io.yong.common.utils; import javax.annotation.PostConstruct; import io.renren.common.config.ConfigProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * @author: HYJ * @create: 2019-09-25 14:16 */ @Component public class CalcUtil { /** * 需要調(diào)用的Bean */ @Autowired private ConfigProperties configProperties; private static CalcUtil calcUtil; /** *注釋用于在完成依賴項(xiàng)注入以執(zhí)行任何初始化之后需要執(zhí)行的方法。必須在類投入使用之前調(diào)用此方法。 */ @PostConstruct public void initialize() { calcUtil= this; calcUtil.configProperties = this.configProperties; } public static void calcTax() { calcUtil.configProperties.getFileupload(); //此處若是空指針異常,則需要是當(dāng)前類實(shí)例化,即注冊bean,例如上:@Component等 }
Java中該注解的說明:@PostConstruct該注解是javax.annotation包下的,被用來修飾一個(gè)非靜態(tài)的void()方法。
被@PostConstruct修飾的方法會(huì)在服務(wù)器加載Servlet的時(shí)候運(yùn)行,并且只會(huì)被服務(wù)器執(zhí)行一次。PostConstruct在構(gòu)造函數(shù)之后執(zhí)行,init()方法之前執(zhí)行。
@PostConstruct注釋規(guī)則:除了攔截器這個(gè)特殊情況以外,其他情況都不允許有參數(shù),否則spring框架會(huì)報(bào)IllegalStateException;而且返回值要是void,但實(shí)際也可以有返回值,至少不會(huì)報(bào)錯(cuò),只會(huì)忽略
通常我們會(huì)是在Spring框架中使用到@PostConstruct注解 該注解的方法在整個(gè)Bean初始化中的執(zhí)行順序:
Constructor(構(gòu)造方法) -> @Autowired(依賴注入) -> @PostConstruct(注釋的方法)
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
標(biāo)題名稱:靜態(tài)方法中調(diào)用Spring注入過程解析
鏈接地址:http://aaarwkj.com/article38/iigppp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、外貿(mào)建站、網(wǎng)站設(shè)計(jì)公司、服務(wù)器托管、云服務(wù)器、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)