我的项目结构如下-
门面->服务->dao
在dao层中,当bean初始化时,会从属性文件中注入许多依赖项。因此,必须先读取属性文件,然后创建剩余的dao bean。当应用程序启动时,它会给出一个错误,即spring无法解析占位符。
dao-application-context.xml类似于-
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="prop">
<value>app.properties</value>
</property>
</bean>
<import resource = "a-dao.xml" />
<import resource = "b-dao.xml" />
<import resource = "c-dao.xml" />
现在,在所有子应用程序上下文中,即a-dao等,我们都有-
<bean ....>
<property name = "xyz">
<value>${appValue}<value/>
</property>
<bean>
收到的错误是无法解析appvalue。我认为这可能是由于创建bean的顺序不正确造成的。但是,相同的配置在另一个更大的项目中工作。
我查过了
Order of Spring Bean Initialization
但实施这一解决方案是不可行的。还有别的办法吗?