动态创建bean

时间:2016-10-07 16:41:16

标签: spring

我需要动态创建bean,我想做类似下面的事情

外部文件系统中的context1

<bean id="env" class="java.lang.String">
      <constructor-arg value="dev"/>
 </bean> 
 <import resource="classpath:context2/>"

classpath中的context2如下:

<bean id="#{env}_config" value="some value here"/>
在java中,当我尝试通过context1应用程序上下文引用bean dev_config时,它给出了未找到dev_config bean的异常。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

你需要添加上下文命名空间(必须有spring-context.jar),并指定scan属性并指定要扫描新bean的包

  <context:component-scan base-package="{quulified name for your package}">
</context:component-scan>

要生成bean的每个类都需要使用@Component

进行注释
       @Component
       public class MyClass