使用spring表达式语言访问用户定义的属性

时间:2015-03-15 13:59:26

标签: spring spring-el

使用SpEL读取用户定义的.properties文件是否合理?我知道我们可以为systemProperties

做类似的事情
  @Value("#{ systemProperties['user.region'] }")

我想访问用户定义的属性文件中的属性。也可以在@ContextConfiguration注释中使用SpEL吗?我想使用我定义的属性文件设置此批注的值。

2 个答案:

答案 0 :(得分:1)

是的,你可以这样做:

private @Value("${propertyName}") String propertyField;

您需要PropertyPlaceholderConfigurer

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
      p:location="classpath:myProps.properties" />

或使用java config

@PropertySource("classpath:myProps.properties")

在配置类

答案 1 :(得分:1)

是的,你可以使用......

@Bean
public Properties props() {
    ...
}

@Value("#{props.foo}")

您希望如何在@ContextConfiguration中使用SpEL?