我们都知道Spring可以注入各种对象,而有些时候,我们需要注入一些配置项,而不是一个对象。
可以发现Spring提供了一个PreferencesPlaceholderConfigurer
类,可以方便的让我们使用注解将properties中的配置信息注入到对象中。
具体操作如下:
创建一个Maven项目,添加Spring Context依赖。
在Spring上下文的配置文件中声明org.springframework.beans.factory.config.PropertiesFactoryBean
和org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer
的实例。
1 | <bean id="configProperties" |
然后在Java代码中使用@Value
注解来取值。注意:相应的Java类也需要使用@Service
、@Component
等声明由Spring管理。
1 | "#{configProperties['mysql.url']}") ( |
注解中的value值#{configProperties['mysql.url']}
中的configProperties
就是Spring上下文中org.springframework.beans.factory.config.PropertiesFactoryBean
的实例ID,mysql.url
就是properties中配置的key。