spring boot 指定启动环境

编程知识 更新时间:2023-04-05 04:11:24

spring boot中,可以通过在bootstrap.yml配置文件中,配置多个不同的profile,实现在不同的环境(比如开发、测试和生产环境)使用不同的配置变量。

Spring Boot中application.yml与bootstrap.yml的区别

Bootstrap.yml(bootstrap.properties)在application.yml(application.properties)之前加载,就像application.yml一样,但是用于应用程序上下文的引导阶段。它通常用于“使用Spring Cloud Config Server时,应在bootstrap.yml中指定spring.application.name和spring.cloud.config.server.git.uri”以及一些加密/解密信息。技术上,bootstrap.yml由父Spring ApplicationContext加载。父ApplicationContext被加载到使用application.yml的之前。

例如,当使用Spring Cloud时,通常从服务器加载“real”配置数据。为了获取URL(和其他连接配置,如密码等),您需要一个较早的或“bootstrap”配置。因此,您将配置服务器属性放在bootstrap.yml中,该属性用于加载实际配置数据(通常覆盖application.yml [如果存在]中的内容)。

当然,在一些情况上不用那么区分这两个文件,你只需要使用application文件即可,把全部选项都写在这里,效果基本是一致的,在不考虑上面的加载顺序覆盖的问题上。

具体配置如下(bootstrap.yml中的内容):

[plain]  view plain  copy
  1. server:  
  2.   port: 8082  
  3.   
  4. # 默认的profile为dev,其他环境通过指定启动参数使用不同的profile,比如:  
  5. #   测试环境:java -jar my-spring-boot.jar --spring.profiles.active=test  
  6. #   生产环境:java -jar my-spring-boot.jar --spring.profiles.active=prod  
  7. spring:  
  8.   profiles:  
  9.     active: dev  
  10.   
  11. ---  
  12. # 开发环境配置  
  13. spring:  
  14.   profiles: dev  
  15. mysql:  
  16.   ipPort: localhost:3306  
  17.     
  18. ---  
  19. # 测试环境配置  
  20. spring:  
  21.   profiles: test  
  22. mysql:  
  23.   ipPort: 192.168.0.12:8066  
  24.     
  25. ---  
  26. # 生产环境配置  
  27. spring:  
  28.   profiles: prod  
  29. mysql:  
  30.   ipPort: 192.168.0.13:8066  

使用方法:

通过指定启动参数使用不同的profile,比如:
#   测试环境:java -jar my-spring-boot.jar --spring.profiles.active=test
#   生产环境:java -jar my-spring-boot.jar --spring.profiles.active=prod

源代码地址:https://github/xujijun/my-spring-boot

更多推荐

spring boot 指定启动环境

本文发布于:2023-04-05 04:11:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/7ceab98b41b9ae47a2c3ad33dd52ba60.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:环境   spring   boot

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 44698文章数
  • 14阅读数
  • 0评论数