在application.properties中添加屬性
ai.name=明
ai.age=22
ai.sex=男
定義配置類如下,前綴(prefix)可自定義修改,本文為 ai。
@ConfigurationProperties(prefix = “ai”)
public class PropertiesSetting1 {
private String name;
private Long age;
private String sex;
public String getName() {return name;}public void setName(String name) {this.name = name;}public Long getAge() {return age;}public void setAge(Long age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}
}
若使用新的配置文件,需新建一個ai.properties。
ai.name=婷婷
ai.age=22
ai.sex=女
配置如下配置類,需要指定ai.properties的位置。
@ConfigurationProperties(prefix = “ai”,locations=”classpath:config/ai.properties”)
public class Properties1Setting {
private String name;
private Long age;
private String sex;
public String getName() {return name;}public void setName(String name) {this.name = name;}public Long getAge() {return age;}public void setAge(Long age) {this.age = age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}
}
在Controller中調用,
@Autowired
private PropertiesSetting propertiesSetting;
@Autowired
private Properties1Setting properties1Setting;
@RequestMapping("/properties")public @ResponseBody String properties(){System.out.println("姓名:"+propertiesSetting.getName()+",年齡:"+propertiesSetting.getAge()+",性別:"+propertiesSetting.getSex());System.out.println("姓名:"+properties1Setting.getName()+",年齡:"+properties1Setting.getAge()+",性別:"+properties1Setting.getSex());return "ok";}
在項目的啟動類上面添加@EnableConfigurationProperties注解,如下。
@SpringBootApplication
@EnableConfigurationProperties({PropertiesSetting.class,Properties1Setting.class})
public class SpringbootNewApplication {
public static void main(String[] args) {SpringApplication.run(SpringbootNewApplication.class, args);}
運行項目,控制台輸出結果,到此配置完成。
(idea為例)如果控制台輸出的中文是亂碼,需要在
File—>Settings—>File Encodings進行設置如下圖。

重新運行,亂碼問題解決。
