java - 通过 Spring 或通过 Maven/Gradle 等构建工具的配置文件有什么区别
问题描述
我们目前正在开发一个基于 Spring Boot 的应用程序,并且我们有一个 QA 和一个 Prod 环境要部署。我建议为不同的环境使用不同的应用程序属性文件,然后在 Docker 组合文件中使用 -Dspring.profiles.active 将是一个很好的分析解决方案。
但是,我的同事说,拥有基于构建工具的分析会是一个更好的主意。像这样的东西 - https://mkyong.com/maven/maven-profiles-example/
请帮助我了解这两种方式之间的优缺点,因为我在网上找不到足够的阅读材料。
解决方案
比较 Spring 和 Mvn/Gradle 就是比较为不同事物设计的 2 个工具。
但是,两者都允许您通过不同的机制提供配置。Spring配置文件旨在用于在不同环境中部署应用程序,因此就用例和预期用途而言,您所描述的内容适合这一点。(参考:https ://docs.spring.io/spring-boot/docs/1.2.0.M1/reference/html/boot-features-profiles.html )
这是使用 Spring 配置文件而不是我想到的构建工具配置的几个优点:
- 可以在不重建应用程序的情况下切换配置文件
- 可以调试应用程序本身而不是查看构建配置,这应该更容易
推荐阅读
- flutter - 在 InkWell 中包装卡片时波纹效果不起作用
- java - 使用速度检测启动应用程序
- java - Intellij 无法识别项目中的源目录
- javascript - 如何将使用 react-pdf 生成的 PDF 与现有 PDF 合并?(JS/node.js)
- c++ - 函数返回类型中的 decltype(auto) 不推导出 const 类型
- c - strncpy函数的循环看不懂
- mysql - AWS - RDS - MySQL - 内存不足
- sprite-kit - SpriteKit 对象不相互碰撞
- ios - URLSession 的 dataTask 未运行
- javascript - 我怎样才能使它根据输入产生不同的结果?