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

使用@value注解取不到application.xml配置文件中的值問題

 更新時間:2022年03月21日 11:30:32   作者:jgsdh.com  
這篇文章主要介紹了使用@value注解取不到application.xml配置文件中的值問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@value注解取不到application.xml的值

報錯信息

今天從碼云上拉下來代碼,突然發(fā)現(xiàn)系統(tǒng)跑不起來了,報錯信息如下:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shiroConfig': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'spring.cache.type' in value "${spring.cache.type}"

開發(fā)組最近都忙著寫業(yè)務(wù)層代碼,一般來說不會碰配置文件里的東西,莫名其妙就出現(xiàn)了這個錯誤。

原來代碼

Java代碼如下:

@Configuration
public class ShiroConfig {    
    @Value("${spring.cache.type}")
    private String cacheType;
    @Value("${server.session-timeout}")
    private int tomcatTimeout;
}

配置文件:

pom.xml原文件:

<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.xml</include>
            </includes>
        </resource>
    </resources>
</build>

問題原因

pom.xml中的resource設(shè)置的不正確

pom.xml修改后:

<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*</include>
            </includes>
        </resource>
    </resources>
</build>

思考

比較神奇的是,修改pom文件后啟動成功了,然后再把它改回原來的樣子,也不會報錯了。Maven clean,Rebuild Project等操作后重啟也都可以的。有點搞不懂。

拓展閱讀

  • resources:描述工程中資源的位置 
  • targetPath:指定build資源到哪個目錄,默認是base directory
  • filtering:指定是否將filter文件(即build下的filters里定義的*.property文件)的變量值在這個resource文件有效,例如上面就指定那些變量值在configuration文件無效。
  • directory:指定屬性文件的目錄,build的過程需要找到它,并且將其放到targetPath下,默認的directory是${basedir}/src/main/resources
  • includes:指定包含文件的patterns,符合樣式并且在directory目錄下的文件將會包含進project的資源文件。
  • excludes:指定不包含在內(nèi)的patterns,如果inclues與excludes有沖突,那么excludes勝利,那些符合沖突的樣式的文件是不會包含進來的。
  • testResources:這個模塊包含測試資源元素,其內(nèi)容定義與resources類似,不同的一點是默認的測試資源路徑是${basedir}/src/test/resources,測試資源是不部署的。

一般情況下:

如果沒有指定resources,自動會將classpath下的src/main/java下的.class文件和src/main/resources下的.xml文件放到target里頭的classes文件夾下的package下的文件夾里。

如果設(shè)定了resources,那么默認的就會失效,就會以指定的includes和excludes為準。

例如,為了使打包的jar包里頭包含.java源文件。

工具類@Value取不到值

工具類里@Value取不到值,如下圖

原因是new的對象

改為

EncryptIdCardUtil類方法改為非靜態(tài)方法,ConnectService類由new改為@Autowired注入

RiskService里也由直接調(diào)用EncryptIdCardUtil里的靜態(tài)方法,改為EncryptIdCardUtil類@Autowired注入

就可以了

總結(jié):

1.@Value不能靜態(tài)成員上使用;

2.使用@Value讀取屬性值的類對象需要交給spring容器管理。

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

相關(guān)文章

  • Java 遍歷取出Map集合key-value數(shù)據(jù)的4種方法

    Java 遍歷取出Map集合key-value數(shù)據(jù)的4種方法

    這篇文章主要介紹了Java 遍歷取出Map集合key-value數(shù)據(jù)的4種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Spring Boot打包war jar 部署tomcat

    Spring Boot打包war jar 部署tomcat

    這篇文章主要介紹了Spring Boot打包war jar 部署tomcat的相關(guān)資料,需要的朋友可以參考下
    2017-10-10
  • java.io.NotSerializableException異常的問題及解決

    java.io.NotSerializableException異常的問題及解決

    這篇文章主要介紹了java.io.NotSerializableException異常的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java實現(xiàn)枚舉狀態(tài)轉(zhuǎn)換的方法詳解

    Java實現(xiàn)枚舉狀態(tài)轉(zhuǎn)換的方法詳解

    在軟件開發(fā)中,我們經(jīng)常需要處理不同系統(tǒng)或模塊間的狀態(tài)轉(zhuǎn)換,今天,我將通過一個電商訂單與物流狀態(tài)的轉(zhuǎn)換案例,展示如何優(yōu)雅地實現(xiàn)枚舉間的互相轉(zhuǎn)換,需要的朋友可以參考下
    2025-04-04
  • Java 根據(jù)貸款年限對應(yīng)利率計算功能實現(xiàn)解析

    Java 根據(jù)貸款年限對應(yīng)利率計算功能實現(xiàn)解析

    這篇文章主要介紹了Java 根據(jù)貸款年限對應(yīng)利率計算功能實現(xiàn)解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • SpringBoot配置@Configuration注解和@bean注解

    SpringBoot配置@Configuration注解和@bean注解

    這篇文章主要介紹了SpringBoot配置@Configuration注解和@bean注解,文章圍繞主題相關(guān)內(nèi)容展開詳細介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-04-04
  • Java線程等待用法實例分析

    Java線程等待用法實例分析

    這篇文章主要介紹了Java線程等待用法,結(jié)合實例形式分析了obj.wait()實現(xiàn)線程等待相關(guān)原理與操作技巧,需要的朋友可以參考下
    2018-09-09
  • Mybatis持久層框架入門之CRUD實例代碼詳解

    Mybatis持久層框架入門之CRUD實例代碼詳解

    這篇文章主要介紹了Mybatis持久層框架入門之CRUD實例,需要的朋友可以參考下
    2022-05-05
  • SpringBoot執(zhí)行有返回值的異步任務(wù)問題

    SpringBoot執(zhí)行有返回值的異步任務(wù)問題

    這篇文章主要介紹了SpringBoot執(zhí)行有返回值的異步任務(wù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 詳解Spring如何避免被JVM 垃圾回收

    詳解Spring如何避免被JVM 垃圾回收

    如果Spring 被回收掉,Spring管理的bean全部會被回收,那我們的Java應(yīng)用不就被一鍋端了嗎?所以本文小編將和大家一起聊聊Spring如何避免被JVM垃圾回收,需要的朋友可以參考下
    2023-11-11

最新評論

荣成市| 阳西县| 道孚县| 聂荣县| 巩义市| 平罗县| 亚东县| 区。| 武安市| 唐河县| 通江县| 沿河| 鄂尔多斯市| 永宁县| 大厂| 文安县| 嘉义县| 安国市| 洛南县| 若尔盖县| 白朗县| 泰和县| 任丘市| 沐川县| 沛县| 文水县| 呈贡县| 眉山市| 新巴尔虎左旗| 内黄县| 突泉县| 镇平县| 神木县| 辽源市| 上饶市| 兴海县| 乌兰浩特市| 平安县| 高雄县| 迁西县| 承德县|