成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

@Configuration,@Value,@ConfigurationProperties注解如何使用

開發(fā) 前端
主要是講解屬性注入的使用,我們可以根據(jù)不同的場景使用不同的配置進行合理的使用注解,沒有最好的,只有合適才是最好的。

一,@Configuration

概述

是spring里面的類,其實就是取代xml配置實例化bean的,是一個配置類,聲明這個類是一個作為配置類,取代xml中的bean注冊對象的,一般和@Bean以及@Scope注解配合使用,將bean對象注入并交給Spring來進行管理,當然他本身也是一個類,由@component修飾,也是一個交給Spring管理的bean,所以也擁有@component功能,可以getBean獲取此對象,有一個屬性proxyBeanMethods,為true的時候,是保持單例對象,為false的時候,是不進行ioc容器的檢查,而是簡單的調(diào)用方法創(chuàng)建對象,可能會有多個實例對象存在。

注解圖

使用過程

作用

主要是用于注入一些Bean對象到IOC容器,比如注入dateSource,注入一些自己需要配置的類交給Spring來管理,就是bean注冊以及實例化的。

二,@Value

概述

此注解也是Spring 中的,可以從配置文件中注入一些屬性到業(yè)務層代碼中去,一般是有兩種格式,是${}和#{},一般我們使用的都是${},使用這個變量,可以注入字符串,可以注入list等,都是可以的,類型按照規(guī)則匹配即可,這也是我們經(jīng)常需要使用的,是讀取配置文件中的屬性;#{}使用的就是直接注入當前配置的屬性,或者注入其他bean的屬性,這種用法和情景在平時很少使用。

注解圖

使用過程

${}

#{}

作用

${}主要是使用這個,注入配置文件中的屬性值,可以支持一些復雜的數(shù)據(jù)類型,方便注入配置可變的屬性,注意當配置文件中的屬性不存在的時候,會報錯,我們可以使用給一個默認值,也可以使用下面的@ConfigurationProperties注解進行屬性的注入。

三,@ConfigurationProperties

概述

此注解是SpringBoot中的注解,主要是三種使用場景,主要就是也是讀取配置文件的屬性,這個讀取屬性,可以將屬性統(tǒng)一配置到一個實體類中去,這樣使用的時候,就可以從全局中獲取,不需要我們在各個地方注入,可以統(tǒng)一來進行管理,主要是用于配置文件中的屬性注入。

注解圖

使用過程

屬性注入

注:注入屬性,統(tǒng)一管理,不會報錯,建議和@RefreshScop(是springCloud的注解)注解配置使用,用于可以刷新配置,當Bean被實例化時,@ConfigurationProperties會將對應前綴的后面的屬性與Bean對象的屬性匹配。符合條件則進行賦值。

在配置類的Bean定義

注:這里便是將前綴為“spring.datasource.primary”的屬性,賦值給DataSource對應的屬性值。

通過@EnableConfigurationProperties定義為Bean

注:通過@EnableConfigurationProperties對KafkaProperties進行實例化時,便會使用到@ConfigurationProperties的功能,對屬性進行匹配賦值。就可以使用bean注冊,使用bean。

作用

主要就是配置問價中的屬性和java類定義的屬性進行綁定在注入,對屬性賦值,一般我們建議使用此注解進行注入屬性,而且再Springcloud中可以配合使用,刷新配置文件中的值,@value也可以使用,如果只是一個屬性的話,可以建議使用。

@EnableConfigurationProperties

其實這個注解就是和@ConfigurationProperties注解配合使用,進行屬性注入的綁定,就是將配置文件中的屬性和@ConfigurationProperties修飾的類進行屬性綁定,并交給到Spring來進行管理,當然 也可以只使用@ConfigurationProperties并使用@Component修飾,交給spring來進行管理,也可以的。一般我們是這樣使用的,不過可以看下KafkaProperties的使用,就可以發(fā)現(xiàn)是使用了這種配合的注解。

四,總結(jié)

主要是講解屬性注入的使用,我們可以根據(jù)不同的場景使用不同的配置進行合理的使用注解,沒有最好的,只有合適才是最好的。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2022-12-08 17:12:34

注解源碼場景

2023-08-28 10:52:52

Full模式Lite

2024-01-08 08:27:11

注解Bean代理

2025-03-28 08:34:34

2022-01-19 13:57:22

ymlSpringSnakeYml

2025-03-25 12:00:00

@Value?Spring開發(fā)

2021-03-24 08:25:08

@SentinelReSentinelSpring

2024-03-07 08:32:35

注解InitBinderHTML

2023-07-29 22:11:58

Spring容器Component

2010-12-16 11:01:55

Windows Ser

2023-05-29 08:11:42

@Value注解Bean

2021-07-19 09:42:45

Spring Boot@ValueJava

2009-06-24 08:05:56

Hibernate基礎Configurati

2009-09-23 17:07:31

Hibernate C

2009-06-15 17:48:32

Spring注解注入屬性

2012-02-09 10:42:24

Java

2022-08-17 07:06:14

SpringBoot配置@Value

2021-09-02 22:52:16

ValueDictionary排序

2023-08-31 08:12:23

應用場景業(yè)務異常HTTP

2023-08-04 07:22:32

SpringBoot項目
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产精品久久久久久久久久久免费看 | 成人影音 | 99久久国产 | 一级美国黄色片 | 精品久久一区 | 中文在线a在线 | 欧美在线 | 羞羞视频免费观 | 久久九 | 夜夜艹天天干 | 91素人| 精品福利在线 | 超碰免费观看 | 天天影视色综合 | 色视频在线播放 | 91久久精品一区 | 国产精产国品一二三产区视频 | 91精品亚洲 | 久久精品欧美电影 | 精品久久久久久 | 91素人| 一本一道久久a久久精品综合蜜臀 | 欧美日韩在线精品 | 天天操天天操 | 国产精品福利网 | 久久99精品久久久久 | 欧美精品久久久久 | av手机免费在线观看 | 日韩欧美在线一区二区 | 久久夜视频 | 视频国产一区 | 亚洲国产偷 | 日韩a视频 | 国产精品久久久久久久久免费樱桃 | 欧美国产91 | 一区二区三区国产在线观看 | 国产一区二区三区四区五区3d | 91精品国产乱码久久久久久久久 | 精品久久久久一区二区国产 | 欧美日韩不卡合集视频 | 欧美国产日本一区 |