当前位置: 首页 > 知识库问答 >
问题:

如何以编程方式重写Spring Boot Application.Properties?

寇照
2023-03-14
spring.datasource.url=jdbc:mysql://localhost/mydb
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

Spring批道具也是如此:

database.driver=com.mysql.jdbc.Driver
database.url=jdbc:mysql://localhost/mydv
database.username=root
database.password=root

共有1个答案

吕承福
2023-03-14

可以在响应ApplicationEnvironmentPrepared事件的生命周期侦听器中添加其他属性源。

类似于:

public class DatabasePropertiesListener implements ApplicationListener<ApplicationEnvironmentPreparedEvent> {
  public void onApplicationEvent(ApplicationEnvironmentPreparedEvent event) {
    ConfigurableEnvironment environment = event.getEnvironment();
    Properties props = new Properties();
    props.put("spring.datasource.url", "<my value>");
    environment.getPropertySources().addFirst(new PropertiesPropertySource("myProps", props));
  }
}

然后在src/main/resources/meta-inf/spring.factors中注册该类:

org.springframework.context.ApplicationListener=my.package.DatabasePropertiesListener
 类似资料:
  • 我在https://stackoverflow.com/a/20323723/3888000中搜索如何减少按钮内的填充,发现我应该在xml文件中将按钮的最小高度设置为0dp。是的,它对我有效。 问题是:我想以编程方式创建按钮,而setMinimumHeight(1)和setMinHeight(1)都没有工作。怎么做? 顺便问一下,这两种方法有什么不同? 谢谢!

  • 我的 Spring 启动应用程序中有两个数据源,因此我无法使用标准数据源。其中之一的定义如下: 上面yaml文件中定义的Hikari属性没有被考虑在内(可能是由于)。要求是使用默认的 Hikari 属性并覆盖上面定义的属性。请建议如何做到这一点。

  • 问题内容: 您知道JavaScript的“ JSON Beautifier”吗? 从 至 例 问题答案: 程序格式化解决方案: 许多现代浏览器(包括IE8)支持的方法可以输出美化的JSON字符串: 此方法还包含在json2.js中,用于支持较旧的浏览器。

  • 问题内容: 我想知道是否已经有一个库可以以编程方式编写Java类或方法? 我正在寻找能够将新的源代码写入现有文件或扩展已经存在的文件的库。 问题答案: 查看Eclipse JDT。 Eclipse Java开发工具(JDT)提供用于访问和操作Java源代码的API。它允许访问工作空间中的现有项目,创建新项目以及修改和读取现有项目。 更具体地说,您可以使用Java Model API创建新的Java

  • 本文向大家介绍如何以编程方式“重启” iOS应用程序?,包括了如何以编程方式“重启” iOS应用程序?的使用技巧和注意事项,需要的朋友参考一下 无论如何,您都无法重启iOS应用程序,即使您能够使用某些私有api,您的应用程序也将被Apple拒绝,并且不会被视为App Store版本。

  • 问题内容: 我的目的是为Java Source File中的方法以编程方式调用Eclipse命令。重命名这样的方法还应该将更改应用于使用/引用此方法的所有实例。 我相信JDT具有Refactoring API,但无法找到相同的任何文档或教程。 有人能指出我正确的方向吗? 编辑:运行时不需要更改。 问题答案: 我认为您最有前途的方法是使用Eclipse源代码。 下载带有源代码的所需版本。特别是,您需