1. @value & @propertysource
1.1 使用方式
@propertysource:讀取外部配置檔案中的 k/v 儲存到執行的環境變數中;載入完外部的配置檔案以後使用 ${} 取出配置檔案的值
@value:賦值
基本數值
可以寫 spel,#{}
可以寫 ${};取出配置檔案【properties】中的值(在執行環境變數裡面的值)
1.2 **
1. person
@data
@slf4j
@tostring
public class person ")
private long id;
@value("zs")
private string name;
@value("$")
private string address;
@value("$")
private integer age;
2. springconfig
@configuration
@propertysource(value = "classpath:person.properties")
public class springconfig {
@bean
public person person() {
return new person();
3. propertiestest
public class propertiestest {
public static void main(string args) {
person person = context.getbean(person.class);
system.out.println(person);
//person(id=2, name=zs, address=上海市, age=19)
2. @profile
2.1 使用方式
@profile:指定元件在哪個環境的情況下才能被註冊到容器中,不指定,任何環境下都能註冊這個元件
加了環境標識的 bean,只有這個環境被啟用的時候才能註冊到容器中。預設是 default 環境
寫在配置類上,只有是指定的環境的時候,整個配置類裡面的所有配置才能開始生效
沒有標註環境標識的 bean 在任何環境下都是載入的
2.2 **
1. message
@data
@noargsconstructor
@allargsconstructor
public class message {
private string label = null;
2. springconfig
@configuration
public class springconfig {
@profile("default")
@bean
public message defaultmessage() {
return new message("default");
@profile("dev")
@bean
public message devmessage() {
return new message("dev");
@profile("test")
@bean
public message testmessage() {
return new message("test");
@profile("prod")
@bean
public message prodmessage() {
return new message("prod");
3. 啟用方式 1
啟用 profile:設定虛擬機器引數 -dspring.profiles.active=dev,test
public class profiletest {
public static void main(string args) {無錫**醫院哪家好
string names = context.getbeannamesfortype(message.class);
for (string name : names) {
system.out.println(name);
//devmessage
//prodmessage
4. 啟用方式 2
public class profiletest {
public static void main(string args) {
//2. 設定需要啟用的環境
context.getenvironment().setactiveprofiles("dev", "prod");
//3. 註冊主配置類
context.register(springconfig.class);
//4. 重新整理容器
context.refresh();
string names = context.getbeannamesfortype(message.class);
for (string name : names) {
system.out.println(name);
//testmessage
//prodmessage
詳解Spring註解驅動開發之屬性賦值
在per程式設計客棧son的屬性上使用 value註解指定注入值 public class person spel表示式 private integer id value 張三 基本資料型別 private string namewww.cppcns.com 配置類 configuration pu...
Spring之元件掃瞄
元件掃瞄 component scanning spring能夠從指定的classpath下自動掃瞄,偵測和例項化具有特定註解的bean。spring提供了一下幾個註解來標註需要被掃瞄到的bean a class lesson01.beans.a scope singleton name value...
Spring註解驅動開發實現屬性賦值
前言 在實際開發當中,spring中bean的屬性直接賦值用的不是太多,整理這方面的資料,做乙個小結,以備後續更深入的學習。通過配置檔案的方式 以配置檔案的方式啟動spring容器時,可以使用property標籤的value給bean的屬性賦值,賦值的形式有以下幾種 程式設計客棧e name val...