SpringBoot中管理多环境配置文件

本文介绍了如何在SpringBoot项目中管理多个环境的配置文件,通过设置spring.profiles.active激活不同环境,并详细阐述了配置文件的命名规则,以及在开发、测试和生产环境的应用。同时,通过测试演示了如何通过启动命令切换环境并验证配置效果。
摘要由CSDN通过智能技术生成

在项目开发中,一般会分为开发环境、测试环境和生产环境。如果总是在一个文件中修修改改,难免会出现错误,尤其是在交接的过程中,一旦出现问题,轻则丢失绩效、重则需要删库跑路。

实现

1、可以通过配置项 spring.profiles.active 的值来激活对应的环境(思路:使用一个默认的文件作为通用配置文件,不同的配置项写入不同环境的配置文件中,部署不同环境时,只需要修改spring.profiles.active的值即可。个人习惯在通用配置文件只保留spring.profiles.active一个配置项,灵活性高一点)

2、通过部署命令java -jar xxx.jar --spring.profiles=xxx 来激活指定的配置项

针对不同的环境,一般常用的命名方式如下:

application.properties  :   通用配置,不区分环境

application-dev.properties  :  开发环境

application-test.properties  :  测试环境

application-prod.properties   : 生产环境

测试

新增配置文件:application.properties

spring.profiles.active=dev

新增配置文件:application-dev.properties

server.port=9999
# 自定义配置项
zepal=dev

新增配置文件:application-prod.properties

server.port=9998
# 自定义配置项
zepal=prod

创建一个接口

@Controller
public class TestController2 {

	@Value("${zepal}")
	private String zepal;
	
	@RequestMapping("/profiles-test")
	@ResponseBody
	public String methodA() {
		return zepal;
	}
	
}

1、通过配置项 spring.profiles.active 激活对应配置文件,启动文件后访问localhost:9998/profiles-test  会超时,访问localhost:9999/profiles-test 会成功

2、将项目打包成jar包后,用启动命令java -jar xxx.jar --spring.profiles=dev  会得到同样的结果

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTM4MTg2Mw==,size_16,color_FFFFFF,t_70

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Spring Boot 是一个非常流行的 Java 框架,它非常方便快捷的搭建 Web 应用程序,但是在多环境的日志管理问题一直是让人头疼的问题,如何合理的配置日志文件,并在不同环境切换,是开发者们需要解决的问题。 首先,我们可以在 application.properties(或 application.yml)文件配置多个日志文件,比如: ``` logging.file=logs/application.log logging.file.prod=logs/application-prod.log logging.file.dev=logs/application-dev.log ``` 上面配置了三个日志文件,分别对应生产环境、开发环境和默认环境。我们可以使用如下命令来指定不同的环境: ``` java -jar demo.jar --spring.profiles.active=prod ``` 通过这种方式来切换不同的环境,Spring Boot 会自动加载对应环境的日志文件。 其次,我们可以在 logback.xml(或 log4j2.xml)文件配置多个 appender,并根据不同的环境来指定不同的 appender。比如: ``` <appender name="Appender" class="ch.qos.logback.core.FileAppender"> <file>${LOG_HOME}/${LOG_FILE}</file> <encoder> <pattern>%d [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <springProfile name="prod"> <appender name="Appender" class="ch.qos.logback.core.FileAppender"> <file>${LOG_HOME}/${LOG_FILE}.prod</file> <encoder> <pattern>%d [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> </springProfile> <springProfile name="dev"> <appender name="Appender" class="ch.qos.logback.core.FileAppender"> <file>${LOG_HOME}/${LOG_FILE}.dev</file> <encoder> <pattern>%d [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> </springProfile> ``` 上面的配置,我们根据不同的环境,分别配置了不同的 appender,然后在启动命令指定环境即可。这种方式同样可以有效地解决多环境下的日志管理问题。 总之,在 Spring Boot 配置环境的日志文件,有多种不同的方式可以实现,开发者可以根据自己的需求和喜好来选择不同的方式。同时,需要注意的是,日志文件配置需要根据实际情况来进行调整和优化,确保系统的稳定性和性能。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值