您好,登錄后才能下訂單哦!
這篇文章主要講解了Spring注解驅動開發實現屬性賦值的方法,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
前言
在實際開發當中,Spring中bean的屬性直接賦值用的不是太多,整理這方面的資料,做一個小結,以備后續更深入的學習。
通過配置文件的方式
以配置文件的方式啟動spring容器時,可以使用property標簽的value給bean的屬性賦值,賦值的形式有以下幾種:
<--通過context:property-placeholder將properties文件中的值加載的環境變量中(properties中的屬性值最終是以環境變量的形式存儲的)> <context:property-placeholder location="classpath:person.properties"/> <bean id="person" class="com.atneusoft.bean.Person" > <--①通過基本數值直接賦值--> <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保存到運行的環境變量中;加載完外部的配置文件以后使用${}取出配置文件的值 @PropertySource(value={"classpath:/person.properties"}) @Configuration public class MainConfigOfPropertyValues { @Bean public Person person(){ return new Person(); } }
public class Person { //使用@Value賦值; //1、基本數值 //2、可以寫SpEL; #{} //3、可以寫${};取出配置文件【properties】中的值(在運行環境變量里面的值) @Value("張三") private String name; @Value("#{20-2}") private Integer age; /* @Value("${person.age}") private Integer age;*/ }
注:
外部配置文件中的k/v保存到運行的環境變量中,可以直接在環境變量中取出對應的值
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfigOfPropertyValues.class);
ConfigurableEnvironment environment = applicationContext.getEnvironment();
String property = environment.getProperty("person.age");
看完上述內容,是不是對Spring注解驅動開發實現屬性賦值的方法有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。