spring-boot - 在 Spring Boot 中配置 application.properties 文件有哪些不同的方法
问题描述
一种方法是直接在任何编辑器中编辑 appliaction.properties 文件并写入内容。是否有任何其他外部方法可以做到这一点,因为在我的一个项目中,当我在编辑器中打开 application.properties 文件时,我无法在其中找到任何内容,但是当我运行应用程序时,我从 application.properties 文件中获取了一些信息.
解决方案
可以使用 SpringBoot 以许多不同的标准方式配置属性。我认为确定参数在哪里的最好方法是列出SpringBoot 配置文档中给出的位置,并检查你的参数是否在这里。
编辑列出位置:
- 主目录上的 Devtools 全局设置属性(当 devtools 处于活动状态时为 ~/.spring-boot-devtools.properties)。
- 测试中的 @TestPropertySource 注释。
- 测试中的 properties 属性。在 @SpringBootTest 和用于测试应用程序特定部分的测试注释上可用。
- 命令行参数。
- 来自 SPRING_APPLICATION_JSON 的属性(嵌入在环境变量或系统属性中的内联 JSON)。
- ServletConfig 初始化参数。
- ServletContext 初始化参数。
- 来自 java:comp/env 的 JNDI 属性。
- Java 系统属性 (System.getProperties())。
- 操作系统环境变量。
- 仅具有随机属性的 RandomValuePropertySource。*。
- 打包 jar 之外的特定于配置文件的应用程序属性(application-{profile}.properties 和 YAML 变体)。
- 打包在 jar 中的特定于配置文件的应用程序属性(application-{profile}.properties 和 YAML 变体)。
- 打包 jar 之外的应用程序属性(application.properties 和 YAML 变体)。
- 打包在 jar 中的应用程序属性(application.properties 和 YAML 变体)。
- @Configuration 类上的 @PropertySource 注释。
- 默认属性(通过设置 SpringApplication.setDefaultProperties 指定)。
推荐阅读
- ruby - Ruby Sequel 和模式数组
- python - 类似于 pandas.ewm() 的排名逆权重
- swift - Crashlytics 导致崩溃
- amazon-cloudwatch-events - AWS Cloud watch 事件调度程序停止触发 lambda
- json - 如何通过 spark 读取带有重复列的 json?
- postgresql - 如何查询 PostgreSQL 真实数据库,而不是它的缓存?
- c++ - 检查用户是否有权在路径 p 处创建文件,而不在路径处创建文件
- pine-script - 如何仅计算筛选脚本上的最新蜡烛
- javascript - 事件侦听器“消息”,基于事件名称在 angularJs、javascript 中使用 promise 进行 API 调用
- javascript - SignalR 通过 IProgress
从 js 客户端到集线器