springboot 常用配置之多环境配置(开发环境、测试环境、生产环境等)
在上一课中我们通过idea工具没有做任何配置就构建了一个springboot项目,并且已经成功启动了,但我们都很清楚这些都远远不能达到我们实际项目的需求,比如我们要引入我们自己的redis配置、mysql配置等,应该如何处理呢?在spring mvc中我们都是通过spring.xml相关文件配置,在springboot中这些都已经不存在了,我们应该怎样配置呢?别急,马上为大家揭晓谜底,跟着我一起来吧!
NO1.我们在做项目的时候是不是都会区分很多环境呢?比如开发环境、测试环境、生产环境等,那么第一步我将先带大家配置好各个环境;
1.首先打开我们项目的pom.xml文件加入以下内容:
<build><finalName>${project.artifactId}-${project.version}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.3</version><configuration><source>1.8</source><target>1.8</target><encoding>utf8</encoding></configuration></plugin></plugins><filters><filter>src/main/resources/application-${filter-resource-name}.properties</filter></filters><resources><resource><directory>src/main/resources</directory><filtering>true</filtering><excludes><exclude>filters/*</exclude><exclude>filters/*</exclude><exclude>application-dev.properties</exclude><exclude>application-test.properties</exclude><exclude>application-prod.properties</exclude><!--SpringBoot项目使用layui框架,图标不显示问题处理--><exclude>static/css/**/*</exclude><exclude>static/fonts/**/*</exclude><exclude>static/ajax/libs/summernote/**/*</exclude></excludes></resource><resource><directory>src/main/resources</directory><filtering>false</filtering><includes><include>application-${filter-resource-name}.properties</include><!--SpringBoot项目使用了layui框架,图标不显示问题处理--><include>static/css/**/*</include><include>static/fonts/**/*</include><include>static/ajax/libs/summernote/**/*</include></includes></resource></resources></build><profiles><profile><id>dev</id><activation><activeByDefault>true</activeByDefault></activation><properties><filter-resource-name>dev</filter-resource-name></properties></profile><profile><id>test</id><properties><filter-resource-name>test</filter-resource-name></properties></profile><profile><id>prod</id><properties><filter-resource-name>prod</filter-resource-name></properties></profile></profiles>
这一段相信大家都很熟悉了吧,我就不多做解释了(有疑问的童鞋可以私信我哦);
2.然后打开application.properties文件,并在其中加入以下内容:
#表示激活的配置文件(dev|prod)
spring.profiles.active=@filter-resource-name@
整个项目变成了如下结构:
至此我们的springboot多环境配置已经完成
打包方式:
生产环境配置如下:
3.设置日志级别
#log level
logging.level.root=debug
4.设置自定义端口以及实例名
#端口
server.port=8888#实例名
spring.application.name=demo-springboot
5.logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration><include resource="org/springframework/boot/logging/logback/base.xml" /><appender name="demo" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>demo/demo.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 按天回滚 daily --><fileNamePattern>demo/demo.%d{yyyy-MM-dd}.log</fileNamePattern><!-- 日志最大的历史 10天 --><maxHistory>10</maxHistory></rollingPolicy><encoder charset="UTF-8"><pattern>${FILE_LOG_PATTERN}</pattern></encoder></appender><logger name="com.example.demo" level="INFO" additivity="false"><appender-ref ref="demo"/></logger><logger name="com.example.demo.dao" level="DEBUG" /><logger name="com.example.demo.service" level="INFO" /><logger name="druid.sql.Statement" level="DEBUG" /><logger name="druid.sql.ResultSet" level="DEBUG" /><logger name="org.apache" level="INFO" /><logger name="org.mybatis.spring" level="ERROR" /><logger name="org.springframework" level="INFO"></logger><logger name="springfox" level="ERROR"></logger><root level="INFO"><appender-ref ref="demo" /></root></configuration
至此,我们项目的基本环境配置已经搭建好,通过maven clean install以下选择dev|test|prod打入你指定的配置,然后run application运行,如果通过localhost:8888可以访问说明你的配置worked了;但是这还远远不够,我们项目开发总得操作数据库吧,哈哈 是的,接下来让我们进入springboot + mysql + mybatis的世界吧!
完整代码下载地址如下:http://zyshare.cn/resource/detail/9
springboot 常用配置之多环境配置(开发环境、测试环境、生产环境等)相关推荐
- [配置]VUE中通过process.env判断开发,测试和生产环境,并分环境配置不同的URL HOST
[配置]VUE中通过process.env判断开发,测试和生产环境,并分环境配置不同的URL HOST process.env是什么? process.env 是 Node.js 中的一个环境对象.其 ...
- vue配置开发、测试、生产环境(proxy中获取process.env.NODE_ENV)
先是看了这个文章写的如何npm run build 的时候自动配置地址 参考文章"vue配置开发.测试.生产环境(不同环境,不同命令)_Amy_cloud的博客-CSDN博客_vue生产环境 ...
- 为什么eolinker发送老是等待_eolinker环境管理之开发、测试和生产环境
在开发的过程中,不可避免会接触到至少三个环境的程序部署:开发.测试和生产环境. 可能在每个环境都使用一套数据库配置,路径配置等,如果每次都人工的干预每一个配置文件,工作会比较繁杂,且容易遗漏并且出错. ...
- 环境管理:开发、测试和生产环境
在开发的过程中,不可避免会接触到至少三个环境的程序部署:开发.测试和生产环境.可能在每个环境都使用一套数据库配置,路径配置等,如果每次都人工的干预每一个配置文件,工作会比较繁杂,且容易遗漏并且出错.这 ...
- 开发,测试,生产环境中使用日志的各种姿势
目前slf4j最受欢迎 两个地方用: 1.非web项目(logback-classic) 2.Springboot(自带) logback简介 logback主要由三个模块构成:logback-cor ...
- 如何用docker发布多个Springboot、Python应用环境(含开发、测试、生产)
文章目录 1. springboot应用 本地启动 docker部署 2. python 应用 本地启动 dockerfile docker 多环境启动 作为一个开发人员,我们至少会接触到两种环 ...
- 【新书推荐】《ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务》 带你走近微服务开发...
<ASP.NET Core 微服务实战>译者序:https://blog.jijiechen.com/post/aspnetcore-microservices-preface-by-tr ...
- 从零开始学产品第五篇:三个环境,开发、测试和线上
本篇为[从零开始学产品]系列课第1章第4节 欢迎到公众号菜单栏,获取产品经理课程更多资料 上节课我们说到了,Bug的生命周期,而只有在测试环境和线上环境发现的Bug,才会被称之为Bug. 倒底什么是测 ...
- Spring Boot通过配置文件区分测试和生产环境
Spring Boot通过配置文件区分测试和生产环境 方法一:我们定义三个配置文件,一个是开发,我们定位为:application-dev.yml,另一个是生产,我们定义为application-pr ...
- uni-app h5打包发版到测试和生产环境具体步骤
前言: 最近需要在uniapp项目上修改需求,完成后需要将页面打包出来,生成h5静态文件,然后部署到测试和生产环境,这里总结下我的具体操作步骤 步骤: 测试域名打开,因为我项目里测试域名都是test. ...
最新文章
- 进入页面先刷新一次_转盘抽奖分享得积分,防止页面被恶意
- Linux C动态链接库实现一个插件例子
- pytorch maxpool和卷积尺寸问题
- AI视觉在教育场景中的创新应用
- JS 总结之关于 this 应该知道的几个点
- (16)css背景属性常用应用场景
- 别急,MIUI 11还有惊喜!下一代MIUI项目已开拔
- c++ 获取当前时间_ThinkPHP6中获取参数的3种常用方法【总结】
- 以太坊POA共识机制Clique源码分析
- 2017北理复试机试题
- MVC中code first方式开发,数据库的生成与更新
- Windows电脑上不错的几款图片编辑软件
- Sublime 高亮汇编asm文件
- 青云决最新服务器,青云决合区表
- Google Cloud API设计指南
- 王刚日记:写文章和赚钱之间的关系
- 远程桌面3389加固
- 《Python基础教程》学习笔记——异常
- 杭电考研经验贴———报考计算机专业,慎重!!!
- EasyX学习笔记(二、黑客帝国数据流)