我有一个mybean类,其中包含字符串“id”。我有很多用id定义的xml bean。我想将mybean java对象的“id”字段填充为xml指定的bean id。如何在没有代码复制的情况下实现这一点?
package just.artmmslv.example.MyBean
public class MyBean {
private String id;
private String foo;
//getters, setters, other fields
}
<beans xmlns="foobar+util">
<util:list value-type="just.artmmslv.example.MyBean">
<bean id="exampleBean01" class="just.artmmslv.example.MyBean">
<property name="foo" value="bar"/>
</bean>
<!--Other beans-->
</util:list>
</beans>
那么,如何方便地使examplebean01的字段id等于examplebean01呢?
2条答案
按热度按时间rpppsulh1#
在mybean中生成string类型的id,而不是int(我在代码中看到int)
使我的豆工具豆制品
在mybean中实现方法setbeanname:
这就是你所需要的
8zzbczxx2#
我认为spring提供了一种通过
BeanNameAware
. 通读:https://docs.spring.io/spring/docs/2.5.x/reference/beans.html#beans-工厂感知豆制品接口将由希望在bean工厂中知道其bean名称的bean实现。注意,通常不建议对象依赖于其bean名称,因为这表示对外部配置的潜在脆弱依赖,以及对springapi的可能不必要的依赖。