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; } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具