Spring-получить значение из файла свойств

У меня есть следующая конфигурация в моем applicationContext.XML-код:

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
       <list>
         <value>classpath:app.properties</value>
      </list>
    </property>
</bean>

теперь, в моем классе java, как я могу прочитать значения из приложения file.свойства?

2 ответов


на самом деле PropertyPlaceholderConfigurer полезен для ввода значений в контекст spring с помощью свойств.

пример определения контекста XML:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
   <property name="driverClassName"><value>${driver}</value></property>
   <property name="url"><value>jdbc:${dbname}</value></property>
</bean>`

пример файла свойств:

driver=com.mysql.jdbc.Driver
dbname=mysql:mydb

или вы можете создать зернах как

<bean name="myBean" value="${some.property.key}" /> 

а затем ввести этот боб в свой класс


С Spring 3.0 вы можете использовать аннотацию @Value.

@Component
class MyComponent {

  @Value("${valueKey}")
  private String valueFromPropertyFile;
}