Spring Profile:
a. Spring可使用Profile决定程序在不同环境下执行情况,包含配置、加载Bean、依赖等。
Spring的Profile一般项目包含:dev(开发), test(单元测试), qa(集成测试), prod(生产环境)。由spring.profiles.active属性决定启用的profile。
b. SpringBoot的配置文件默认为 application.properties(或yaml,此外仅以properties配置为说明)。不同Profile下的配置文件由application-{profile}.properties管理,同时独立的 Profile配置文件会覆盖默认文件下的属性。
SptringBoot项目(Eclipse)中Maven的使用——环境隔离
1. Maven环境隔离前言
基本类别:
解决的问题:
环境隔离的依赖:
Spring Profile: a. Spring可使用Profile决定程序在不同环境下执行情况,包含配置、加载Bean、依赖等。 Spring的Profile一般项目包含:dev(开发), test(单元测试), qa(集成测试), prod(生产环境)。由spring.profiles.active属性决定启用的profile。 b. SpringBoot的配置文件默认为 application.properties(或yaml,此外仅以properties配置为说明)。不同Profile下的配置文件由application-{profile}.properties管理,同时独立的 Profile配置文件会覆盖默认文件下的属性。
Maven Profile: Maven同样也有Profile设置,可在构建过程中针对不同的Profile环境执行不同的操作,包含配置、依赖、行为等。 Maven的Profile由 pom.xml 的标签管理。每个Profile中可设置:id(唯一标识), properties(配置属性), activation(自动触发的逻辑条件), dependencies(依赖)等。
2. SpringBoot项目中的相关配置
pom.xml中,在build(dependencies)同级的地方加入:
在classpath下分别创建三个环境需要的application-${profile}.propertices:
3. 通过Eclipse对maven的profile进行设置:
(右键项目 - peoperties - maven - 输入pom中配置的profile的Id - Apply后即配置环境成功)
参考文章: https://www.jianshu.com/p/948c303b2253 https://yq.aliyun.com/articles/670083 http://tengj.top/2017/02/28/springboot2/ https://www.jianshu.com/p/ad1b8157feaf