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

Spring不能注入Static變量的原因及Spring注入靜態(tài)變量

 更新時(shí)間:2016年01月01日 11:13:00   作者:Draenei  
這篇文章主要介紹了Spring不能注入Static變量的原因及Spring注入靜態(tài)變量,需要的朋友可以參考下

下面給大家介紹spring不能注入static變量的原因,具體詳情如下所示:

Spring 依賴(lài)注入 是依賴(lài) set方法

set方法是 是普通的對(duì)象方法

static變量是類(lèi)的屬性

 @Autowired 
 private static JdbcTemplate jdbcTemplate;

單純看這個(gè)注入過(guò)程是沒(méi)有報(bào)錯(cuò)的,但是在接下來(lái)的jdbcTemplate.query()會(huì)報(bào)空指針錯(cuò)誤.

ps:Spring注入靜態(tài)變量

今天碰到一個(gè)問(wèn)題,我的一個(gè)工具類(lèi)提供了幾種靜態(tài)方法,靜態(tài)方法需要另外一個(gè)類(lèi)的實(shí)例提供處理,因此就寫(xiě)出了這樣的代碼:

 Class Util{
  private static XXX xxx;
  xxx = BeanUtil.getBean("xxx");
  public static void method(){
    xxx.func(); 
  }
  public static void method(){
    xxx.func();
  }   
 }

  這里是使用的getBean的方式,獲得XXX的實(shí)例,但是別人說(shuō)這個(gè)方法不好,想要注入的方式。

  但是靜態(tài)的XXX如何注入呢?

  上網(wǎng)查了很多的說(shuō)法,其實(shí)很簡(jiǎn)單:

 Class Util{
  private static XXX xxx;
  public void setXxx(XXX xxx){
    this.xxx = xxx;
  }
  public void getXxx(){
    return xxx;
  }
  public static void method1(){
    xxx.func1(); 
  }
  public static void method2(){
    xxx.func2();
  }   
}

  在xml中正常配置注入就可以了。

<bean value="test" class="x.x.x.Util">
  <property value="xxx" ref="xxx"/>
</bean>

  這里要注意,自動(dòng)生成的getter和setter方法,會(huì)帶有static的限定符,需要去掉,才可以。

相關(guān)文章

  • 如何解決maven報(bào)錯(cuò):不知道這樣的主機(jī)問(wèn)題

    如何解決maven報(bào)錯(cuò):不知道這樣的主機(jī)問(wèn)題

    這篇文章主要介紹了如何解決maven報(bào)錯(cuò):不知道這樣的主機(jī)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Windows下gradle的安裝與配置的超詳細(xì)教程

    Windows下gradle的安裝與配置的超詳細(xì)教程

    這篇文章主要介紹了Windows下gradle的安裝與配置,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 淺析Java8 中 Map 接口的新方法

    淺析Java8 中 Map 接口的新方法

    這篇文章主要介紹了Java8 中 Map 接口的新方法,本文通過(guò)代碼實(shí)例給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Springboot2.x+Quartz分布式集群的實(shí)現(xiàn)

    Springboot2.x+Quartz分布式集群的實(shí)現(xiàn)

    這篇文章主要介紹了Springboot2.x+Quartz分布式集群的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • spring啟動(dòng)后保證創(chuàng)建的對(duì)象不被垃圾回收器回收

    spring啟動(dòng)后保證創(chuàng)建的對(duì)象不被垃圾回收器回收

    最近看到一個(gè)問(wèn)題是,spring在啟動(dòng)后如何保證創(chuàng)建的對(duì)象不被垃圾回收器回收?。所以本文結(jié)合jvm的垃圾回收機(jī)制和spring中的源代碼做出自己的一點(diǎn)猜測(cè)。有需要的朋友們可以參考借鑒。
    2016-09-09
  • Netty分布式Server啟動(dòng)流程服務(wù)端初始化源碼分析

    Netty分布式Server啟動(dòng)流程服務(wù)端初始化源碼分析

    本章主要講解server啟動(dòng)的關(guān)鍵步驟,?讀者只需要了解server啟動(dòng)的大概邏輯,?知道關(guān)鍵的步驟在哪個(gè)類(lèi)執(zhí)行即可,?并不需要了解每一步的運(yùn)作機(jī)制,?之后會(huì)對(duì)每個(gè)模塊進(jìn)行深度分析
    2022-03-03
  • SpringBoot中的事務(wù)回滾規(guī)則詳解

    SpringBoot中的事務(wù)回滾規(guī)則詳解

    這篇文章主要介紹了SpringBoot中的事務(wù)回滾規(guī)則詳解,事務(wù)是指一系列的操作,這些操作要么全部成功,要么全部失敗。在Spring Boot中,我們可以使用事務(wù)管理器來(lái)管理事務(wù),在使用事務(wù)管理器的時(shí)候,一個(gè)非常重要的概念就是事務(wù)回滾,需要的朋友可以參考下
    2023-07-07
  • Spring中Bean初始化和銷(xiāo)毀的方式總結(jié)

    Spring中Bean初始化和銷(xiāo)毀的方式總結(jié)

    這篇文章主要為大家整理了Spring中Bean初始化和銷(xiāo)毀的多種方式,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以了解一下
    2023-04-04
  • springboot如何讀取sftp的文件

    springboot如何讀取sftp的文件

    這篇文章主要介紹了springboot如何讀取sftp的文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java的@Repeatable注解使用詳細(xì)解析

    Java的@Repeatable注解使用詳細(xì)解析

    這篇文章主要介紹了Java的@Repeatable注解使用詳細(xì)解析,java8新增了注解@Repeatable,在hibernate-validator的源碼注解如@MAX、@NotNull等中,有@Repeatable注解的使用,需要的朋友可以參考下
    2024-02-02

最新評(píng)論

横山县| 汉川市| 海林市| 桐乡市| 长岛县| 卢氏县| 湖北省| 长寿区| 漳平市| 龙江县| 青川县| 来安县| 西乡县| 虎林市| 玉林市| 平和县| 玛多县| 自治县| 鲁山县| 府谷县| 文安县| 安龙县| 三都| 天长市| 海南省| 宣武区| 新安县| 贺兰县| 吐鲁番市| 隆安县| 永昌县| 泰州市| 宣恩县| 化州市| 武山县| 建宁县| 壶关县| 综艺| 韶山市| 嘉黎县| 定襄县|