Подтвердить что ты не робот

<util: properties> эквивалент в java-конфигурации для spring

Каким будет эквивалент в java-конфигурации конфигурации spring на основе XML

<util:properties id="mapper"  location="classpath:mapper.properties" />

Чтобы иметь возможность использовать этот конкретный объект свойства в коде, например:

@Resource(name = "mapper")
private Properties myTranslator;

Глядя на документ, я посмотрел на

@PropertySource

но мне кажется, что конкретный файл свойств не будет доступен индивидуально из объекта Environment.

4b9b3361

Ответ 1

Очень просто объявить PropertiesFactoryBean.

@Bean(name = "mapper")
public PropertiesFactoryBean mapper() {
    PropertiesFactoryBean bean = new PropertiesFactoryBean();
    bean.setLocation(new ClassPathResource("com/foo/jdbc-production.properties"));
    return bean;
}

В документации здесь вы заметите, что до того, как они сделали <util:properties>, они использовали PropertiesFactoryBean как таковой

<!-- creates a java.util.Properties instance with values loaded from the supplied location -->
<bean id="jdbcConfiguration" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
  <property name="location" value="classpath:com/foo/jdbc-production.properties"/>
</bean>

Преобразование этого в конфигурацию Java очень просто, как показано выше.