Моя проблема заключается в следующем: я хочу подключиться к БД и из таблицы получить определенные значения и присвоить их бобу.В текущем весеннем проекте это делается следующим образом:
Класс com.some.DbPropertyPlaceholderConfigurer находится в файле jar.
<bean id="propertyConfigurer"
class="com.some.DbPropertyPlaceholderConfigurer">
<property name="dataSourceName" value="dataSource" />
<property name="locations">
<list>
<value>classpath:resources/context.properties</value>
</list>
</property>
</bean>
<bean id="someObject" class="com.some.beans.SomeObject">
<property name="someprop" value="${prefix.someprop}" />
<property name="someprop1" value="${prefix.someprop1}" />
<property name="someprop2" value="${prefix.someprop2}" />
....
</bean>
DbPropertyPlaceholderConfigurer находится в файле JAR, он читает из таблицы БД.Таблица Db имеет столбцы значений ключа.Ключ содержит «prefix.someprop» и имеет некоторое значение.
Теперь я работаю над преобразованием пружинных бобов в пружинные загрузочные бины с использованием аннотаций.Следом идет фасоль весной.Я придумал следующий для весенней загрузки, но бин не инициализируется.Я не уверен, как сопоставить свойства "dataSourceName" и "location"
@Configuration
public class AppConfig {
@Bean
public DbPropertyPlaceholderConfigurer propertyConfigurer() {
return new DbPropertyPlaceholderConfigurer();
}
@Bean
public SomeObject someObject() {
return new SomeObject();
}
}
. Выдает следующее исключение:
[localhost-startStop-1] ERROR org.springframework.boot.SpringApplication - Application run failed
org.springframework.beans.factory.BeanInitializationException: Could not load properties; nested exception is java.lang.NullPointerException
at com.some.configuration.DbPropertyPlaceholderConfigurer.processProperties(DbPropertyPlaceholderConfigurer.java:130)
Кроме того, если он инициализируется, как я на самом деле его использую