Spring - 虽然不是将bean配置为bean

时间:2010-02-02 16:26:47

标签: java spring

我有一个Spring管理的bean(应用程序作用域,或Spring世界中的单例),其中包含属性的属性。

如果没有太多努力,我想用XML配置这些对象。

如果我将它们声明为bean,那么我可以注入它们,但是我不希望它们是Spring管理的bean,配置更长,并且还有额外的开销与制作bean(内存+ cpu)相关联个循环)。

在JBoss Seam,Jetty中,我可以像这样实例化组件:

<New class="" id="">
  <Arg/>
  <Arg>
    <New class=""/>
  </Arg>
</New>

在JBoss Seam中:

<mypackage:class-name id="someComponent">
  <component:property name="items">
     <mypackage:other-class-name title="The Great Gatsby" pages="201"/>
  </...>
</...>

我希望主项目是组件/ bean,而不是内部组件。我只是希望那些是匿名的,除了从父级继承的生命周期之外没有与之相关的生命周期。

内部项目是mypackage:other-class-name和Arg元素中的New。

谢谢,

沃尔特

1 个答案:

答案 0 :(得分:2)

我不认为这是可能的。也许你需要的是inner beans definitions

<bean id="outer" class="...">
<!-- instead of using a reference to a target bean, simply define the target bean inline -->
  <property name="target">
    <bean class="com.example.Person"> <!-- this is the inner bean -->
      <property name="name" value="Fiona Apple"/>
      <property name="age" value="25"/>
    </bean>
  </property>
</bean>