作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想使用带有条目的 application.properties 文件设置配置文件:
mode=master
如何在我的 context.xml 文件中设置 spring.profiles.active? init-param 仅适用于 web.xml 上下文。
<init-param>
<param-name>spring.profiles.active</param-name>
<param-value>"${mode}"</param-value>
</init-param>
最佳答案
有几种方法可以更改 Activity 配置文件,但没有一种是直接从属性文件中获取的。
<init-param>
正如您在问题中所做的那样。 -Dspring.profiles.active="master"
ConfigurableEnvironment
来自你的 ApplicationContext
和 setActiveProfiles(String...)
以编程方式使用 context.getEnvironment().setActiveProfiles("container");
您可以使用 ApplicationListener
收听上下文初始化。关于如何做到这一点的说明 here .您可以使用 ContextStartedEvent
ContextStartedEvent event = ...; // from method argument
ConfigurableEnvironment env = (ConfigurableEnvironment) event.getApplicationContext().getEnvironment();
env.setActiveProfiles("master");
可以得到值"master"
从您认为合适的属性文件中获取。
关于java - 如何在 Spring 中使用 application.properties 设置配置文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18614849/
我是一名优秀的程序员,十分优秀!