我正在使用spring加载属性文件
<bean id="appProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations" value="classpath:/sample.properties" />
<property name="ignoreUnresolvablePlaceholders" value="true"/>
</bean>
当我使用
@value(${testkey})
工作正常。
但是当我尝试使用env时
@Resource
private Environment environment;
environment.getProperty("testkey") // returning null
如果有人想在不使用@PropertySource的情况下实现这一点
使用ApplicationContextInitializer接口及其配套的contextInitializerClasses servlet上下文参数。
将此添加到web中。xml
<context-param>
<param-name>contextInitializerClasses</param-name>
<param-value>com.test.MyInitializer</param-value>
</context-param>
定义你的初始化器
public class MyInitializer implements ApplicationContextInitializer<ConfigurableWebApplicationContext> {
public void initialize(ConfigurableWebApplicationContext ctx) {
PropertySource ps = new ResourcePropertySource(new ClassPathResource("sample.properties")); // handle exception
ctx.getEnvironment().getPropertySources().addFirst(ps);
}
}
参考:Spring3.1 M1:统一行政物业
一个属性不添加属性从它的
位置
到环境
。通过Java配置,您可以使用@Properties tySource
来实现这一点。
我正在使用log4j 2.4,并尝试将转换为,但是似乎不能使用log4j2.properties。 null 虽然以下文档https://logging.apache.org/log4j/2.x/manual/configuration.html#属性 清楚地表明 属性配置文件支持广告客户、monitorInterval、name、packages、shutdownHook、status 我也尝试
从最新版本开始,我就体验到了Chrome的一些意想不到的行为:在Firefox中,这段代码运行得非常好: 它不工作在Chrome(简单地下载一个名为下载的文件),但以前工作得很好。我必须改变什么,它又开始工作了?
我想让一个svg文本可编辑。经过一番研究,我发现editable属性可以指定svg元素的内容是否可以编辑到位(http://www.w3.org/tr/2004/wd-SVG12-20041027/text.html)。 所以我试着: 但是,我还是不能编辑它!(我使用了最新版本的谷歌Chrome,Firefox和IE)
我有以下XML 我有以下freemarker模板,其中xml元素被注入为“元素”。
我使用的是Spring boot 1.5.7版本。 我正在尝试在应用程序中设置全局非空Jackson属性。 但它不起作用。 这两种方法我都试过了。属性和引导。但不起作用。 但当我申请班级级别时,它运行良好。
试图让spring boot@ConfigurationProperties注释工作起来,这让我感到非常困难。所以希望有人能为我澄清我做错了什么。我有一个Spring Boot应用程序,它在类路径上包含一个application.properties。它的价值在于 我有一个application.class,它有spring boot注释,位于包层次结构的顶部 有人告诉我我做错了什么吗? 更新: