Spring 配置檔案匯入與裝配

2021-07-24 15:38:10 字數 2369 閱讀 4123

在spring中,配置檔案分為匯入和裝配兩個步驟,而裝配則分為通過spring的environment、解析屬性佔位符、spring表示式語言spel三種方式。

一、spring匯入配置檔案:

配置檔案中匯入非常簡單,只需要

1、匯入properties檔案:

在src/main/resources下面新建乙個file,命名為test.properties

2、在config檔案中,寫入解析配置檔案的註解:

@propertysource("classpath:test.properties")

3、如果是多個配置檔案的話,那麼最好在.xml中加入掃瞄配置檔案的註解:

那麼spring就會把classpath下面所有的.properties配置都匯入到容器中。

二、通過spring的environment來裝配屬性:

spring會自動解析配置檔案,並將配置檔案中得到的資料注入到spring的environment物件中,需要獲取配置檔案資訊的類只需要注入spring的environment物件即可。

使用@autowired即可自動注入乙個environment物件,此物件即有配置檔案中的所有配置,即可以通過此物件來獲取配置檔案中的所有資訊。

environment的使用:

1、獲取配置資訊的四種方法:

1.1、string getproperty(string key)

1.2、string getproperty(string key,string defaultvalue)

1.3、t getproperty(string key, classtype)

1.4、t getproperty(string key, classtype,t defaultvalue)

比如想獲取配置檔案中key為name的屬性,可以這樣:

env.getproperty("name")

env.getproperty("connection.username")

3與4即是獲取非string型別的屬性,比如獲取integer屬性的引數:

int count = env.getproperty("connection.count", integer.class, 30);

2、判斷是否存在某配置:

boolean exists = env.containsproperty("disc.title");

舉例:需要解決的問題:

現在我需要將乙個people的name和age都放在配置檔案中,在程式執行時,動態的將name和age放置到people物件中:

解決方法:

1、新建乙個test.properties,寫入配置:

age=18

2、在config檔案中寫入註解:

@configuration

@propertysource("classpath:test.properties")

public class mainconfig

}3、其中people的實體類為:

public class people

public void setname(string name)

public string getage()

public void setage(string age)

}4、建立乙個test類進行測試:

@runwith(springjunit4classrunner.class)

@contextconfiguration(classes = mainconfig.class)

public class maintest

}5、輸出的結果為:

三、使用解析屬性佔位符進行裝配:

此為最簡單的方法,當匯入配置檔案之後,我們可以直接通過

@value("$")

來直接獲取到配置檔案中key對應的值:

比如,配置檔案中有乙個配置:

key=value

那麼獲取的方式為

@value("$")

舉例:繼續按照上述工程,現在需要直接通過配置檔案中的資料去生成乙個valuepeople物件,寫法為:

@component

public class valuepeople ")

private string name;

@value("$")

private string age;

public string getname()

public void setname(string name)

public string getage()

public void setage(string age)

}則spring在生成valuepeople物件時會自動將name和age注入進去。

spring配置檔案

1 配置檔案的簡化 1 屬性的 property name foo value foovalue value property 簡化為 property name foo value foovalue 2 引用bean property name foo ref bean foobean prope...

spring配置檔案

context annotation config 是用於啟用那些已經在spring容器裡註冊過的bean上面的註解,也就是顯示的向spring註冊 autowiredannotationbeanpostprocessor commonannotationbeanpostprocessor pers...

Spring Boot匯入配置檔案與取值

springboot簡化了大量配置檔案,但是必要時還是需要匯入配置檔案的,比如dubbo,此處簡記之。所有的配置檔案引入都是使用註解在類上進行引入的,常用的有兩種註解 propertysource和 importsource,分別匯入properties檔案和xml檔案 propertysource...