繁体   English   中英

在spring上下文中创建bean

[英]Create bean in spring context

<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类的情况下使用正确的数据获取我的成员变量路径。

假设您使用的是Spring WebMVC。 有两种方式:

  1. 将bean配置mvc-dispatcher-servlet.xml调度程序配置XML( mvc-dispatcher-servlet.xml
  2. 保留spring.xml并在web.xml指定它

    <context-param> <param-name>contextConfigLocation</param-name> <param-value>spring.xml</param-value> </context-param>

在这两种情况下,您将不再需要像Factory这样的类。 此外,由于Spring默认情况下会在单例作用域中创建bean,因此您不需要为com.mypackage.util.Configuration类实现getInstance()方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM