一、值的注入,,步驟如下:
1)先用Spring Initializr來迅速地建一個(gè)Spring Boot工程,,并建實(shí)體類,其中需要注入屬性的實(shí)體類添加通用注解將該組件注入到Spring容器中,,由于需要往這個(gè)里面去注入屬性,,所以要添加一個(gè)注解@ConfigurationProperties(prefix="")。 /**
* 建一個(gè)Person類模型
* */
@Component //將該組件注入到Spring容器中
@ConfigurationProperties(prefix = "person")//將配置文件中所有以person開頭的值注入到當(dāng)前類中,。
public class Person {
//...里面封裝6個(gè)屬性及其get,、set、toString方法 }
//注意:在pom里要添加processor包 2) 在resource目錄下用全局配置文件application.properties給實(shí)體類對(duì)象person進(jìn)行值的注入,,即賦值,。
3)在pom.xml中添加spring-boot-configuration-processor的依賴。
4)寫測(cè)試類和啟動(dòng)類,。 在啟動(dòng)類中用@SpringBootApplication(@ScanBasePackages=""),,該注解用于掃描注入類所對(duì)應(yīng)的包。 在測(cè)試類中,,用@RunWith(SpringRunner.class)注解去加載測(cè)試運(yùn)行器,,另外,用@SpringBootApplication加載上下文環(huán)境,,并向該注解的參數(shù)中添加啟動(dòng)類.class作為的參數(shù),,最后并注入要依賴的類對(duì)象,最后運(yùn)行測(cè)試的方法,。
注意:每個(gè)類之間都有關(guān)聯(lián)性
說明: 1.第二步也可用application.yaml文件方式來進(jìn)行屬性值的賦予,,即鍵值對(duì)的方式賦值。 2.對(duì)于對(duì)某個(gè)類(如Student類)中的某一個(gè)或幾個(gè)屬性賦值可在屬性值上添加@Value("${person.id}"),,看pom中是否需要導(dǎo)入Spring的相關(guān)的文件,。 3.@ConfigurationProperties和@Value這兩個(gè)注解的區(qū)別在于前一個(gè)是SpringBoot的注解,而后一個(gè)是Spring的注解,,前者適用于批量注入屬性,,后者適用于單個(gè)屬性的注入。
二,、自定義配置的值的注入:
也可在resource下自定義配置文件,,需要在配置類上加入@Configuration,并用@PropertySource注解指定配置文件的路徑及名稱,另外要添加EnableConfigurationProperties(currentClass.class)或用注解@SpringBootApplication注解,,并最后寫測(cè)試類測(cè)試,。
三、Profile多環(huán)境配置:
多環(huán)境配置有兩種方式:1.用Profile文件進(jìn)行多環(huán)境配置,。 2.用@Profile注解進(jìn)行多環(huán)境配置,。
法1.用Profile文件進(jìn)行多環(huán)境配置 1)在resource目錄下,分別建環(huán)境配置文件,,文件名格式:application-xxx.properties,,內(nèi)容主要是:
server.port=8081 2)在resources目錄中的全局配置文件application.properties中選擇要激活的端口,代碼如下: spring.profiles.active=dev 3) 運(yùn)行啟動(dòng)類查看結(jié)果,。
法2.用@Profile注解進(jìn)行多環(huán)境配置 1)在配置包下建一個(gè)config包,,并在其下建一個(gè)用于配置數(shù)據(jù)庫(kù)的接口文件。 public interface DBConfigure{
void configure();
} 2) 并建若干實(shí)現(xiàn)類來實(shí)現(xiàn)接口,,用以模擬連接配置不同的數(shù)據(jù)庫(kù)環(huán)境,。 @Configuration
@Profile("dev")
public class devDBConfigure implements DBConfigure{
System.out.println("數(shù)據(jù)庫(kù)配置環(huán)境");
} 3)在resources目錄中的全局配置文件application.properties中選擇要激活的端口,代碼如下: spring.profiles.active=dev 4)建一個(gè)測(cè)試類,。 @RestController
public class DBController{
@Autowired
private DBConnector dbConnector;
public void showDB(){
void configure();
}
} 5)添加掃描包(配置類)路徑,,運(yùn)行啟動(dòng)類 //加載配置并掃描包,并開啟實(shí)例化類
@SpringBootApplication(scanBasePackages = "com.Controller.*")
public class SpringbootexerciseApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootexerciseApplication.class, args);
}
} 來源:https://www./content-4-629251.html
|