![](/img/trans.png)
[英]How to correctly version control (svn:ignore) a Java project (Maven, Spring)?
[英]Spring Properties in Version Control
我创建了以下所有已签入 git 的属性文件:
**application.properties**
spring.application.name=my-service
spring.cloud.config.fail-fast=true
spring.cloud.config.uri=${CONFIG_URI:http://localhost:8888}
spring.cloud.loadbalancer.ribbon.enabled=false
**application-dev.properties**
spring.cloud.config.enabled=false
eureka.client.enabled=false
spring.application.name=my-service
spring.datasource.url=jdbc:mysql://${DB_URL:http://localhost:3306/db_example}
spring.datasource.username=dev
spring.datasource.password=local
在生产中,所有配置都从配置服务器中检索。
关于此设置的问题:
我看到的选项:
我错过了什么? 我想要一个随时可用的开发人员配置文件,但当然每个开发人员的机器都需要进行调整。
您可以定义用于构建 spring 的配置文件,这些配置文件将传递到项目构建时间。 因此,尽可能多地定义您喜欢的配置文件属性文件:
application-prod.properties
application-user1.properties
application-user2.properties
application-user3.properties
您可以通过在项目配置中传递 VM-Options 来加载您的属性
-Dspring.profiles.active=user2
请注意,您可以将所有配置文件使用的通用属性定义为:
application.properties
并将application.properties
的默认配置文件设置为:
spring.profiles.active=prod
每个用户都可能基于其适当的数据库方案。 :
spring.datasource.url=jdbc:myql://host:port/database_${user.lowername}
spring.datasource.username=database_${user.lowername}
spring.datasource.password=database_${user.lowername}
$user 是存储在操作系统本身中的环境变量
我在我的公司看到了几种不同的方式:
Spring Boot 的外部化配置文档对我们理解我们的选项和 PropertySource 顺序非常有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.