spring boot属性文件之多环境配置, log4j多环境不同日志级别的控制,logback的介绍
spring boot属性文件之多环境配置:
先介绍各种优雅的配置:
@Value("${com.kfit.blog.name}")
@ConfigurationProperties(prefix="com.kfit.blog")
通过${random}来产生int值、long值或者string字符串,来支持属性的随机值。
通过命令行设置属性值: 通过使用--server.port属性来设置xxx.jar应用的端口为8888
重点是多环境配置:
在Spring Boot中多环境配置文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,比如:
application-dev.properties:开发环境
application-test.properties:测试环境
application-prod.properties:生产环境
在配置文件中指定
在application.properties中加入:
spring.profiles.active=dev
spring boot日志升级篇—log4j多环境不同日志级别的控制:
首先需要有 多环境:这一点在前面已经通过 application-{profile}.properties的格式 实现,然后是不同级别的日志控制。
有了多环境,然后给 每个环境配置对应的日志等级,就实现了 多环境不同日志级别的控制。
转载: http://412887952-qq-com.iteye.com/blog/2307194
注意作者提出的坑(有空验证一下):
这里有一个坑,一不小都会掉进去的,我们在java Run configurations配置的启动参数在单元测试中是无效的,这个是一个很深的陷阱,呼一声就掉进去了,反正我是进去了,然后我发现不管我这么改,都是激活了dev,最后经过不断的寻找资料才知道,如果想在单元测试中激活profiles的话,那么是需要进行配置的,怎么做呢,在单元测试类中添加如下注解即可:
@RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(App.class) /* * @ActiveProfiles,可以指定一个或者多个 profile, * 这样我们的测试类就仅仅加载这些名字的 profile 中定义的 bean 实例。 * 这里激活application-prod.properties配置文件. */ @ActiveProfiles("prod")
spring boot日志升级篇—logback:
有空配置看一下效果(一直在使用,没关注细节):
浙公网安备 33010602011771号