微服务,微架构[五]之springboot读取properties文件
来源:互联网 发布:有深度的书籍推荐知乎 编辑:程序博客网 时间:2024/05/17 04:04
介绍
很多项目中都会有配置文件,比如说配置 数据库的连接项目常量定义等等参数配置,那么这些参数在项目启动的时候就会被读到指定的容器中,可供项目初始化将必要的对象都初始化完成,如果参数配置错误或参数没有定义,项目在启动的时候就会相应的报错,提示某某参数没有定义或者不对,今天我给大家介绍一下springboot如何读取这些初始化参数,让项目启动时候能够自动的加载,并且应用到我们的项目中。
一、spring boot 默认定义
默认参数文件名称为 application.properties 或者 application.yaml ,这两种格式选其中任意一种可以作为项目启动的配置文件,两种格式有所不同
properties 格式 my.web.name=eshengtai 类似键值对的方式
yaml 格式
my:
web:
name:eshengtai
当然也可以自定义配置文件,作为项目的其他配置参数文件,比如 redis.properties,dataSource.properties可以单独定义配置文件,让springboot在启动时帮我们加载,在程序中可以方便的使用
二、读取配置文件
1、读取application.properties配置文件中,自定义的参数
project.name=eshengtai
project.url=www.eshengtai.net
读取参数自定义内容
/** * 读取application properties文件内容 * @author wolf.yansl * */@Componentpublic class ApplicationProperties {@Value("${project.name}") private String name; @Value("${project.url}") private String url;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;} }
2、读取自定义properties文件,读取自定义参数,eshengtai.properties
spring.boot=boot
spring.url=spring.io
读取参数定义内容
/** * 读取自定义配置文件,eshengtai.properties * @author wolf.yansl * */@Component@PropertySource("classpath:eshengtai.properties") public class EShengTaiProperties {@Value("${spring.boot}")private String springName;@Value("${spring.url}")private String url;public String getSpringName() {return springName;}public void setSpringName(String springName) {this.springName = springName;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}}3、动态切换配置文件properties文件,在不同的开发环境下,如何可以达到,只需要修改参数就可以动态读取不同的参数文件,从而方便快捷的使用properties的内容
配置文件有4个
application-dev.properties 开发环境 ,server.port=1111服务器端口1111
application-prod.properties 正式环境 ,server.port=2222服务器端口2222
application-test.properties 测试环境 ,server.port=3333服务器端口3333
application.properties 主要启动配置文件,配置切换启动读哪个文件初始化环境 spring.profiles.active 动态切换读取配置文件,修改服务器的访问端口变化,测试
spring.profiles.active=dev #springboot启动读取 application-dev.properties,并且访问端口为1111
spring.profiles.active=prod #springboot启动读取 application-prod.properties,并且访问端口为2222
spring.profiles.active=test #springboot启动读取 application-.propertiestt,并且访问端口为3333
- 微服务,微架构[五]之springboot读取properties文件
- 微服务,微架构[一]之springboot[helloWorld]
- 微服务,微架构[二]之springboot集成jdbc
- 微服务,微架构[四]之springboot集成Redis缓存
- 微服务,微架构[六]之springboot集成mybatis
- 微服务,微架构[七]之springboot异常处理
- SpringBoot读取application.properties文件
- 【微服务架构】SpringCloud之Feign(五)
- 【微服务架构】SpringCloud之Feign(五)
- SpringBoot开始微服务架构
- 微服务,微架构[三]之springboot集成nosql数据库mongodb
- 微服务,微架构[零]springboot入门介绍
- 微服务,微架构[八]springboot多环境切换profiles
- 微服务,微架构[十]springboot模板页面freemarker
- 微服务,微架构[十一]springboot模板页面velocity
- 微服务,微架构[十一]springboot模板页面thymeleaf
- 微服务,微架构[十二]springboot监听器,过滤器
- 微服务,微架构[十三]springboot集成RabbitMQ
- XTU 1264 Partial Sum【思维+贪心】
- Java面向对象
- HDU 2818 Building Block (带权并查集)
- Servlet的生命周期与浏览器访问Servlet
- 95. Unique Binary Search Trees II
- 微服务,微架构[五]之springboot读取properties文件
- View的测量
- |算法讨论|树链剖分 学习笔记
- hacking exposed 作业
- NSError和NSException的几点说明
- Maven 常用命令
- 轻松制作自己的词云,向心爱的ta表达一下浪漫的心意吧
- JavaScript中的Object.defineProperty 函数
- 离散题目7