我有一个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。
谢谢,
沃尔特
答案 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>