Spring注解驅動開發(fā)實現(xiàn)屬性賦值
前言
在實際開發(fā)當中,Spring中bean的屬性直接賦值用的不是太多,整理這方面的資料,做一個小結,以備后續(xù)更深入的學習。
通過配置文件的方式
以配置文件的方式啟動spring容器時,可以使用property標簽的value給bean的屬性賦值,賦值的形式有以下幾種:
<--通過context:property-placeholder將properties文件中的值加載的環(huán)境變量中(properties中的屬性值最終是以環(huán)境變量的形式存儲的)> <context:property-placeholder location="classpath:person.properties"/> <bean id="person" class="com.atneusoft.bean.Person" > <--①通過基本數(shù)值直接賦值--> <property name="name" value="zhangsan"></property> <--②通過${}取出配置文件中的值--> <property name="age" value="${person.age}"></property> <--③通過Spring的El表達式--> <--<property name="age" value="10*2"></property>--> </bean>
classpath下的properties文件內容
person.age=\u5C0F\u674E\u56DB
通過注解的方式
使用properties的value對應的注解給屬性賦值
//使用@PropertySource讀取外部配置文件中的k/v保存到運行的環(huán)境變量中;加載完外部的配置文件以后使用${}取出配置文件的值 @PropertySource(value={"classpath:/person.properties"}) @Configuration public class MainConfigOfPropertyValues { @Bean public Person person(){ return new Person(); } }
public class Person { //使用@Value賦值; //1、基本數(shù)值 //2、可以寫SpEL; #{} //3、可以寫${};取出配置文件【properties】中的值(在運行環(huán)境變量里面的值) @Value("張三") private String name; @Value("#{20-2}") private Integer age; /* @Value("${person.age}") private Integer age;*/ }
注:
外部配置文件中的k/v保存到運行的環(huán)境變量中,可以直接在環(huán)境變量中取出對應的值
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfigOfPropertyValues.class);
ConfigurableEnvironment environment = applicationContext.getEnvironment();
String property = environment.getProperty("person.age");
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Spring Boot的listener(監(jiān)聽器)簡單使用實例詳解
監(jiān)聽器(Listener)的注冊方法和 Servlet 一樣,有兩種方式:代碼注冊或者注解注冊。接下來通過本文給大家介紹Spring Boot的listener(監(jiān)聽器)簡單使用,需要的朋友可以參考下2017-04-04ShardingSphere jdbc集成多數(shù)據源的實現(xiàn)步驟
本文主要介紹了ShardingSphere jdbc集成多數(shù)據源的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10Spring Security OAuth2集成短信驗證碼登錄以及第三方登錄
這篇文章主要介紹了Spring Security OAuth2集成短信驗證碼登錄以及第三方登錄,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04ThreadPoolExecutor參數(shù)的用法及說明
這篇文章主要介紹了ThreadPoolExecutor參數(shù)的用法及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03SpringBoot整合TKMyBatis實現(xiàn)單表增刪改查操作
據說tk.mybatis能夠讓我不寫sql代碼就可以所有單表操作問題,作為熱愛偷懶的我,怎么能放過這種機會。talk is cheap, show me the code。趕緊搞個例子爽一把先2023-01-01springboot2+mybatis多種方式實現(xiàn)多數(shù)據配置方法
這篇文章主要介紹了springboot2+mybatis多種方式實現(xiàn)多數(shù)據配置方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03