<bean id="configuration" class="com.mypackage.util.Configuration" factory-method="getInstance">
<property name="path" value="${path.props.app.dev}"></property>
</bean>
然后我在课堂上有以下内容
Configuration.getInstance();
而spring应用程序上下文加载在另一个类Factory中,如此
private Factory() {
context = new ClassPathXmlApplicationContext("META-INF/spring.xml");
}
问题是在访问Factory类之前,上下文没有加载,配置对象为路径赋予null,而当访问Factory时,访问该路径属性后,它会给出正确的路径。
请告诉我如何正确地做到这一点?这就是如何在不访问Factory类的情况下使用正确的数据获取我的成员变量路径。
答案 0 :(得分:0)
假设您使用的是Spring WebMVC。有两种方式:
mvc-dispatcher-servlet.xml
)保留spring.xml
并在web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>spring.xml</param-value>
</context-param>
在这两种情况下,您将不再需要像Factory
这样的课程。此外,由于Spring默认情况下会在单例范围内创建bean,因此您无需为getInstance()
类实现com.mypackage.util.Configuration
方法。