Это эхо ответа @ skaffman в этом вопросе SO.Я добавляю больше деталей, чтобы помочь другим и себе, когда я пытаюсь решить эту проблему в будущем.
Существует три способа внедрить файл свойств
Метод 1
<bean id="myProps" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath:com/foo/jdbc-production.properties</value>
</list>
</property>
</bean>
Ссылка ( ссылка )
Метод 2
<?xml version="1.0" encoding="UTF-8"?>
<beans
...
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="...
...
http://www.springframework.org/schema/util/spring-util.xsd"/>
<util:properties id="myProps" location="classpath:com/foo/jdbc-production.properties"/>
Ссылка ( ссылка )
Метод 3
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="classpath:com/foo/jdbc-production.properties" />
</bean>
Ссылка ( ссылка )
По сути, все методы могут создавать бин Properties
из файла свойств.Вы можете даже напрямую ввести значение из файла свойств, используя @Value
injector
@Value("#{myProps[myPropName]}")
private String myField;