spring boot配置项profiles active
2024-09-25 09:31:16
结论:通用项配置在applicaton.yml,区别环境配置在application-{profile}.yml中
一直不知道这个参数要不要配,配了有什么用,今天搭一个工程来检验
此项作用:用来区分不同环境配置
application-dev.yml 开发环境
application-test.yml 测试环境
application-prod.yml 生产环境
applicaton.yml(通用项配置)用spring.profile.active=dev来决定启用上面的哪个环境配置文件(不同环境不同配置)
1.搭个简单的spring boot工程
此处省略过程,详细可参考。
结果目录结构
注:在服务器上时,yml文件与jar包同一级,若需指定路径时,启动脚本中,带参数--spring.config.location=/home/ap/testapp/myproject/config/
2.文件内容
application-dev.yml
application-test.yml
application-prod.yml
application.yml
spring:
application:
name: profileactivetest-service
profiles:
active: dev
server:
port: 8707
3.编写controller类ProfileTestController.java
package com.example.profileactivetest; import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; /**
* @Title:
* @Auther: test
* @Date: 2019/7/3 8:54
* @Version: 1.0
* @Description:
*/
@RestController
public class ProfileTestController {
@Value("${envUrl}")
private String envUrl; @RequestMapping("/getEnvUrl")
public String getParam(){
return "My envUrl configed as :"+envUrl;
}
}
3.启动测试
当application.yml中spring.profile.active=prod时
spring:
application:
name: profileactivetest-service
profiles:
active: prod
server:
port: 8707
4.附
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--此工程没有加入聚合工程管理-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>profileactivetest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>profileactivetest</name>
<description>Demo project for Spring Boot</description> <properties>
<java.version>1.8</java.version>
<spring-cloud.version>Greenwich.SR1</spring-cloud.version>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies> <dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>
启动类
package com.example.profileactivetest; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class ProfileactivetestApplication { public static void main(String[] args) {
SpringApplication.run(ProfileactivetestApplication.class, args);
} }
最新文章
- 使用WebRTC搭建前端视频聊天室——入门篇
- 关于rank、dense_rank、ROW_NUMBER及OVER(PARTITION BY)、OVER(ORDER BY)的一些用法
- am等adb命令小总结
- hdu 4005 双联通 2011大连赛区网络赛E *****
- IOS 加载Xib 后 如何 动态修改xib中的控件frame
- linux下格式化硬盘与挂载硬盘
- Java根据一个网址链接获取源代码
- mybatis系列-09-订单商品数据模型
- 第四十二篇、自定义Log打印
- 【转】MyEclipse8.5集成Tomcat7时的启动错误:Exception in thread “main” java.lang.NoClassDefFoundError org/apache/commons/logging/LogFactory
- QT使用UAC(经过验证)
- Java基础知识强化之集合框架笔记47:Set集合之TreeSet保证元素唯一性和比较器排序的原理及代码实现(比较器排序:Comparator)
- AppServ设置虚拟主机 及域名连接
- C#使用Xamarin开发可移植移动应用(3.Xamarin.Views控件)附源码
- C++智能指针(auro_ptr...)
- Java进阶(六)Java反射机制可恶问题NoSuchFieldException
- pig的udf编写
- 微信小程序支付,带java源码
- Windows 7 编译64位boost库
- 修改element ui 默认样式最好的解释