spring boot使用application.properties默认了很多配置。但需要自己添加一些配置的时候,我们应该怎么做呢。

若继续在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.properties

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中可直接注入

@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";
	} 
}
你可能感兴趣的内容
0条评论

dexcoder

这家伙太懒了 <( ̄ ﹌  ̄)>
Owner