Spring Boot使用自定義的properties

spring boot使用application.properties默認了不少配置。但須要本身添加一些配置的時候,咱們應該怎麼作呢。java

若繼續在application.properties中添加

wisely2.name=wyf2  
wisely2.gender=male2  

定義配置類:

@ConfigurationProperties(prefix = "wisely2")  
public class Wisely2Settings {  
    private String name;  
    private String gender;  
    public String getName() {  
        return name;  
    }  
    public void setName(String name) {  
        this.name = name;  
    }  
    public String getGender() {  
        return gender;  
    }  
    public void setGender(String gender) {  
        this.gender = gender;  
    }  
  
}  

若新用新的配置文件

如我新建一個wisely.propertiesspring

wisely.name=wangyunfei  
wisely.gender=male 

 需定義以下配置類

@ConfigurationProperties(prefix = "wisely",locations = "classpath:config/wisely.properties")  
public class WiselySettings {  
    private String name;  
    private String gender;  
    public String getName() {  
        return name;  
    }  
    public void setName(String name) {  
        this.name = name;  
    }  
    public String getGender() {  
        return gender;  
    }  
    public void setGender(String gender) {  
        this.gender = gender;  
    }  
  
}  

最後注意在spring Boot入口類加上@EnableConfigurationProperties

@SpringBootApplication  
@EnableConfigurationProperties({WiselySettings.class,Wisely2Settings.class})  
public class DemoApplication {  
  
    public static void main(String[] args) {  
        SpringApplication.run(DemoApplication.class, args);  
    }  
}  

 使用定義的properties

在別的bean中可直接注入app

@Controller  
public class TestController {  
    @Autowired  
    WiselySettings wiselySettings;  
    @Autowired  
    Wisely2Settings wisely2Settings;  
  
    @RequestMapping("/test")  
    public @ResponseBody String test(){  
        System.out.println(wiselySettings.getGender()+"---"+wiselySettings.getName());  
        System.out.println(wisely2Settings.getGender()+"==="+wisely2Settings.getGender());  
        return "ok";  
    }   
}  
相關文章
相關標籤/搜索