亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

關(guān)于@Value注解取不到值的幾種情況

 更新時間:2021年11月18日 10:58:43   作者:快樂的小三菊  
這篇文章主要介紹了關(guān)于@Value注解取不到值的幾種情況,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@Value注解取不到值的幾種情況

spring的框架中,我們經(jīng)常使用@Value注解來獲取定義在application.properties的屬性值,正常情況下是可以輕松的獲取到值的,但是有幾種特殊情況下是獲取不到值的,在這記錄下,以防止以后犯錯誤。正常獲取的用法如下:

application.properties中定義一個屬性值:

正常情況下在代碼里面這樣獲取:

@Value("${ftpIP}")
private String ftpIP;

幾種獲取不到值的特殊情況如下

情況一:使用static或者final修飾了tagValue

@Value("${ftpIP}")
private static String ftpIP; 
@Value("${ftpUserName}")
private final String ftpUserName;

情況二:用該注解的類上面沒有加注解,即不能被spring管理

public class FTPManagerService { 
 @Value("${ftpIP}")
 private static String ftpIP; 
}

情況三:類被new新建了實例,而沒有使用@Autowired

public class FTPManagerService { 
 @Value("${ftpIP}")
 private static String ftpIP; 
} 
public class Test{
    /*錯誤用法*/
    FTPManagerService  f = new FTPManagerService ();
 
    /*正確用法*/
    @Autowired
    FTPManagerService  f2;
}

@Value取不到值的原因

在springboot中想獲取配置文件中的值,一般的方法為

@Value("${tag}")
private String tagValue;

但是取值時,有時這個tagvalue為NULL,

可能原因有

1.類沒有加上@Component(或者@service等)

@Component //遺漏
class TestValue{
    @Value("${tag}")
    private String tagValue;
}

2.類被new新建了實例,而沒有使用@Autowired

@Component 
class TestValue{
    @Value("${tag}")
    private String tagValue;
} 
class Test{
    ...
    TestValue testValue = new TestValue()

正確方式

1.使用@Autowired注入

2.在controller層注值

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

相關(guān)文章

  • SpringBoot使用druid配置多數(shù)據(jù)源問題

    SpringBoot使用druid配置多數(shù)據(jù)源問題

    這篇文章主要介紹了SpringBoot使用druid配置多數(shù)據(jù)源問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • java并發(fā)編程專題(六)----淺析(JUC)Semaphore

    java并發(fā)編程專題(六)----淺析(JUC)Semaphore

    這篇文章主要介紹了java JUC)Semaphore的相關(guān)資料,文中示例代碼非常詳細,供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • 以Java代碼的方式總結(jié)幾個典型的內(nèi)存溢出案例

    以Java代碼的方式總結(jié)幾個典型的內(nèi)存溢出案例

    作為程序員,多多少少都會遇到一些內(nèi)存溢出的場景,如果你還沒遇到,說明你工作的年限可能比較短,或者你根本就是個假程序員!哈哈,開個玩笑.今天分享給大家Java內(nèi)存溢出的相關(guān)案例,希望大家在日常工作中,盡量避免寫這些low水平的代碼,需要的朋友可以參考下
    2021-06-06
  • Java圖形用戶界面設(shè)計(Swing)的介紹

    Java圖形用戶界面設(shè)計(Swing)的介紹

    看到多數(shù)人提到 Java 就以為是網(wǎng)絡(luò)開發(fā),其實不是這樣的,Java 也可以開發(fā)應(yīng)用程序,而且可以開發(fā)出漂亮的圖形用戶界面的應(yīng)用程序,因此,我寫下這篇文章,希望能帶你進入 Java 圖形用戶界面設(shè)計之門。
    2016-07-07
  • java書店系統(tǒng)畢業(yè)設(shè)計 總體設(shè)計(1)

    java書店系統(tǒng)畢業(yè)設(shè)計 總體設(shè)計(1)

    這篇文章主要介紹了java書店系統(tǒng)畢業(yè)設(shè)計,第一步系統(tǒng)總體設(shè)計,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 一文講解如何優(yōu)雅的調(diào)試jar包

    一文講解如何優(yōu)雅的調(diào)試jar包

    在現(xiàn)實開發(fā)過程中,現(xiàn)場環(huán)境永遠比開發(fā)環(huán)境復(fù)雜,下面這篇文章主要給大家介紹了關(guān)于如何優(yōu)雅的調(diào)試jar包的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-03-03
  • 詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié)

    詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié)

    本篇文章主要介紹了詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • Spring?Boot?使用?Disruptor?做內(nèi)部高性能消息隊列

    Spring?Boot?使用?Disruptor?做內(nèi)部高性能消息隊列

    這篇文章主要介紹了Spring?Boot?使用?Disruptor?做內(nèi)部高性能消息隊列,工作中遇到項目使用Disruptor做消息隊列,對你沒看錯,不是Kafka,也不是rabbitmq。Disruptor有個最大的優(yōu)點就是快,還有一點它是開源的哦,下面做個簡單的記錄
    2022-06-06
  • Java 使用keytool創(chuàng)建CA證書的操作

    Java 使用keytool創(chuàng)建CA證書的操作

    這篇文章主要介紹了Java 使用keytool創(chuàng)建CA證書的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • java避免多層嵌套循環(huán)用到的一些小技巧分享

    java避免多層嵌套循環(huán)用到的一些小技巧分享

    這篇文章主要介紹了java避免多層嵌套循環(huán)用到的一些小技巧分享,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10

最新評論