SpringBoot总结之属性配置
一、SpringBoot简介
SpringBoot是spring团队提供的全新框架,主要目的是抛弃传统Spring应用繁琐的配置,该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。从本质上说springboot不是一门新技术,主要是作用就是简化spring开发。
(在Eclipse里使用SpringBoot,需要安装STS插件)
二、SpringBoot属性配置
SpringBoot项目,可通过application.properties配置文件,来配置项目相关信息。
application.properties项目配置文件,打开是空白 里面可以配置项目,所以配置项目我们 alt+/ 都能提示出来。也可以使用yml文件做为项目配置文件。
1)项目内置属性
application.properties:
server.port=8080
server.servlet.context-path=/springTest
application.yml:
server: port: 8080 servlet: context-path: /springTest
2)自定义属性
application.properties:
server.port=8080 server.servlet.context-path=/springTest hello=hello springboot
application.yml:
server: port: 8080 servlet: context-path: /springTest hello: hello springboot
/** * 获取自定义属性只要在字段上加上@Value("${配置文件中的key}"),就可以获取值 * @author rdb * */ @Controller public class UserController { @Value("${hello}") private String hello; @RequestMapping("/user") @ResponseBody public String test() { return hello; } }
3)ConfigurationProperties 配置
配置一个类别下的多个属性,我们可以@ConfigurationProperties配置到bean里,使用是直接注入就行了
server: port: 8080 servlet: context-path: /springTest hello: hello springboot test: ip: 192.168.11.11 port: 90
@Component @ConfigurationProperties(prefix="test") public class ConfigBean { private String ip ; private String port; public String getIp() { return ip; } public void setIp(String ip) { this.ip = ip; } public String getPort() { return port; } public void setPort(String port) { this.port = port; } }
@Controller public class UserController { //获取自定义属性只要在字段上加上@Value("${配置文件中的key}"),就可以获取值 @Value("${hello}") private String hello; //@ConfigurationProperties 配置的属性可以直接注入获取 @Autowired private ConfigBean configBean; @RequestMapping("/user") @ResponseBody public String test() { System.out.println(configBean.getIp()); System.out.println(configBean.getPort()); return hello; } }