java - 如何在 spring 中覆盖 application-default.yml 值
问题描述
假设有三个独立的 Spring Boot 项目相互依赖,如下所示:
Other-App ----> My-Library ----> Other-Library
Other-Library 有一个强制属性,由 spring boot 配置属性填充。Other-App 可以选择使用 My-Library(和 Other-library)。My-library 是我自己的代码,我可以操作它(其他模块不在我的控制范围内)。
问题是如果Other-App没有设置Other-Library的属性,就会遇到应用启动异常。Other-App 没有使用必要的 My-library(和 Other-library),因此它可能没有设置所有依赖项的所有强制属性。
我在 My-Library 中创建了一个 application-default.yml 来设置 Other-library 属性的默认值。但是现在只有 application-default.yml 的 Other-App 可以覆盖我的默认值,如果它想使用它的依赖项。
有没有办法为其他模块属性设置默认值?还是有更好的方法来覆盖最终用户的 application-default.yml ?
解决方案
推荐阅读
- javascript - 选择复选框时如何克隆元素
- html - 如何使用 CSS 在 Bootstrap 中更改某些样式
- variables - 为什么不能在块中更改全局变量?
- vue.js - BootstrapVue 模态在第一次单击时未显示,但在第二次单击时工作正常
- visual-studio-code - VS Code 终端在执行完成之前不会显示打印语句输出
- java - 如何在 ArchUnit 规则中排除一个类?
- json - JavaScript:访问嵌套的 JSON 对象
- sql - 如何在查询中动态传递 id
- sql-server - 如何将视图作为列插入表中?
- python - 在集成测试 (Pytest) 和 Flask 应用程序之间创建不同的 SQLAlchemy 会话