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

springboot中@ConfigurationProperties無效果的解決方法

 更新時(shí)間:2024年06月14日 09:24:29   作者:五敷有你  
本文主要介紹了springboot中@ConfigurationProperties無效果,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

原因有一下幾點(diǎn)

前綴prefix沒寫對(概率不大,但也有)

@Data
@ConfigurationProperties(prefix = "message")
public class MyBean {


    private String msg;

    public MyBean(){
        System.out.println("MyBean初始化完成");
    }

  
}

2.類的方法中沒有setter

解決方法:

  • 用lombok的注解
  • 或者自己寫getter setter

3.寫了ConfigurationProperties但是沒寫Component

交給spring管理

4.是用AnnotationConfigApplicationContext(MyBeanConfig.class);獲取的bean不是一個(gè)spring容器(我的問題在于這個(gè))

用spring容器的自動(dòng)注入是有值的

但自己單開一個(gè)spring容器,這是兩個(gè),所以不會(huì)有值,有值的放到了第一個(gè)spring的容器中

第一個(gè)spring容器在

第二個(gè)spring容器是我在測試類開的,

@ConfigurationProperties 

在Spring Boot中注解@ConfigurationProperties有三種使用場景。

場景一

使用@ConfigurationProperties和@Component注解到bean定義類上,這里@Component代指同一類實(shí)例化Bean的注解。

基本使用實(shí)例如下:

// 將類定義為一個(gè)bean的注解,比如 @Component,@Service,@Controller,@Repository
// 或者 @Configuration
@Component
// 表示使用配置文件中前綴為user1的屬性的值初始化該bean定義產(chǎn)生的的bean實(shí)例的同名屬性
// 在使用時(shí)這個(gè)定義產(chǎn)生的bean時(shí),其屬性name會(huì)是Tom
@ConfigurationProperties(prefix = "user1")
public class User {
	private String name;
	// 省略getter/setter方法
}

對應(yīng)application.properties配置文件內(nèi)容如下:

user1.name=Tom

在此種場景下,當(dāng)Bean被實(shí)例化時(shí),@ConfigurationProperties會(huì)將對應(yīng)前綴的后面的屬性與Bean對象的屬性匹配。符合條件則進(jìn)行賦值。

場景二

使用@ConfigurationProperties和@Bean注解在配置類的Bean定義方法上。以數(shù)據(jù)源配置為例:

@Configuration
public class DataSourceConfig {

	@Primary
	@Bean(name = "primaryDataSource")
	@ConfigurationProperties(prefix="spring.datasource.primary")
	public DataSource primaryDataSource() {
		return DataSourceBuilder.create().build();
	}
}

這里便是將前綴為“spring.datasource.primary”的屬性,賦值給DataSource對應(yīng)的屬性值。

@Configuration注解的配置類中通過@Bean注解在某個(gè)方法上將方法返回的對象定義為一個(gè)Bean,并使用配置文件中相應(yīng)的屬性初始化該Bean的屬性。

場景三

使用@ConfigurationProperties注解到普通類,然后再通過@EnableConfigurationProperties定義為Bean。

@ConfigurationProperties(prefix = "user1")
public class User {
	private String name;
	// 省略getter/setter方法
}

這里User對象并沒有使用@Component相關(guān)注解。

而該User類對應(yīng)的使用形式如下:

@SpringBootApplication
@EnableConfigurationProperties({User.class})
public class Application {
    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class, args);
    }
}

上述代碼中,通過@EnableConfigurationProperties對User進(jìn)行實(shí)例化時(shí),便會(huì)使用到@ConfigurationProperties的功能,對屬性進(jìn)行匹配賦值。

到此這篇關(guān)于springboot中@ConfigurationProperties無效果的文章就介紹到這了,更多相關(guān)springboot @ConfigurationProperties內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot整合log4j日志與HashMap的底層原理解析

    SpringBoot整合log4j日志與HashMap的底層原理解析

    這篇文章主要介紹了SpringBoot整合log4j日志與HashMap的底層原理,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • Spring?Boot?接口加解密功能實(shí)現(xiàn)

    Spring?Boot?接口加解密功能實(shí)現(xiàn)

    在我們?nèi)粘5腏ava開發(fā)中,免不了和其他系統(tǒng)的業(yè)務(wù)交互,或者微服務(wù)之間的接口調(diào)用;如果我們想保證數(shù)據(jù)傳輸?shù)陌踩?,對接口出參加密,入?yún)⒔饷埽@篇文章主要介紹了Spring?Boot?接口加解密功能實(shí)現(xiàn),需要的朋友可以參考下
    2023-04-04
  • MyBatis-Plus多表聯(lián)查(動(dòng)態(tài)查詢)的項(xiàng)目實(shí)踐

    MyBatis-Plus多表聯(lián)查(動(dòng)態(tài)查詢)的項(xiàng)目實(shí)踐

    本文主要介紹了MyBatis-Plus多表聯(lián)查(動(dòng)態(tài)查詢)的項(xiàng)目實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Java詳解HashMap實(shí)現(xiàn)原理和源碼分析

    Java詳解HashMap實(shí)現(xiàn)原理和源碼分析

    這篇文章主要介紹了Java關(guān)于HashMap的實(shí)現(xiàn)原理并進(jìn)行源碼分析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • SpringBoot集成E-mail發(fā)送各種類型郵件

    SpringBoot集成E-mail發(fā)送各種類型郵件

    這篇文章主要為大家詳細(xì)介紹了SpringBoot集成E-mail發(fā)送各種類型郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Spring?Boot項(xiàng)目如何優(yōu)雅實(shí)現(xiàn)Excel導(dǎo)入與導(dǎo)出功能

    Spring?Boot項(xiàng)目如何優(yōu)雅實(shí)現(xiàn)Excel導(dǎo)入與導(dǎo)出功能

    在我們平時(shí)工作中經(jīng)常會(huì)遇到要操作Excel的功能,比如導(dǎo)出個(gè)用戶信息或者訂單信息的Excel報(bào)表,下面這篇文章主要給大家介紹了關(guān)于Spring?Boot項(xiàng)目中如何優(yōu)雅實(shí)現(xiàn)Excel導(dǎo)入與導(dǎo)出功能的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • java實(shí)現(xiàn)門禁系統(tǒng)

    java實(shí)現(xiàn)門禁系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)門禁系統(tǒng)的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 詳解Java多線程編程中CountDownLatch阻塞線程的方法

    詳解Java多線程編程中CountDownLatch阻塞線程的方法

    在Java中和ReadWriteLock.ReadLock一樣,CountDownLatch的本質(zhì)也是一個(gè)"共享鎖",這里我們就來詳解Java多線程編程中CountDownLatch阻塞線程的方法:
    2016-07-07
  • SpringBoot2.3.0配置JPA的實(shí)現(xiàn)示例

    SpringBoot2.3.0配置JPA的實(shí)現(xiàn)示例

    這篇文章主要介紹了SpringBoot2.3.0配置JPA的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Java窗口精細(xì)全方位講解

    Java窗口精細(xì)全方位講解

    這篇文章呢,將會(huì)系統(tǒng)的精細(xì)的教會(huì)鐵鐵們?nèi)绾巫约簩懸粋€(gè)完整的窗口;看完之后窗口穩(wěn)拿下!!!所以呢由于詳細(xì),知識點(diǎn)多,可能有點(diǎn)長,鐵鐵們慢慢仔細(xì)閱讀吧;文章寫的還是一如既往快樂的,哈哈哈
    2021-08-08

最新評論

桂东县| 黄平县| 东乡县| 新沂市| 会泽县| 平顺县| 蒲江县| 泾川县| 彩票| 五大连池市| 根河市| 大英县| 凤山市| 山东| 古交市| 安庆市| 集贤县| 朝阳县| 永城市| 青阳县| 潜山县| 巴青县| 托克逊县| 肃北| 奈曼旗| 会理县| 柳江县| 阜南县| 保山市| 和顺县| 太白县| 南漳县| 五寨县| 宁化县| 汪清县| 高台县| 石首市| 洞头县| 康马县| 海原县| 泰州市|