java - Spring配置将属性传递给引用的bean

标签 java spring jakarta-ee javabeans

我有以下设置:

<bean id="b1" class="SomeClass">
    <property name="foo" ref="foo1"/>
</bean>

<bean id="b2" class="SomeClass">
    <property name="foo" ref="foo2"/>
</bean>

<bean id="foo1" class="FooClass">
    <constructor-arg index="0"><ref bean="dataSource1"/></constructor-arg>
    ...other constructor args
</bean>

<bean id="foo2" class="FooClass">
    <constructor-arg index="0"><ref bean="dataSource2"/></constructor-arg>
    ...other constructor args
</bean>

有办法避免重复 FooClass 吗?我想要在 bean b1 和 b2 中执行的操作是添加对 FooClass 的引用,但指定数据源,所有其他构造函数参数都相同。

谢谢

吉姆

最佳答案

如果您希望在每次调用相应的 getter 时动态初始化/填充类的某些成员,您可以尝试查找方法注入(inject)。阅读第 3.3.4.1 页 here .

因此,即使包含动态成员的类是在scope=singletone(spring bean容器的默认值)中创建的,每次访问分配了查找方法的字段时,您都会根据业务逻辑在查找方法内实现。

另外,我发现了一个很好的example在Spring文档中-我认为它非常清楚。看一下《3.4.6.1 Lookup方法注入(inject)》

关于java - Spring配置将属性传递给引用的bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21932411/

相关文章:

java - 我可以通过 JNDI 查找 EJB 并使用反射调用方法吗?

java - 如何让 Java Swing 正确绘制?

java applet卡住浏览器以及javascript和applet之间通信的方式

java - Spring Stomp 可以发送未经请求的消息

java - 如何使用 PagingAndSortingRepository 不返回特定列

spring - 使用 spring mvc3 @ResponseBody 有 415 Unsupported Media Type 为什么?

java - 单例设计模式实现

java.util.regex.PatternSyntaxException : Unclosed character class near index 0

spring - 有没有 Spring MVC 兼容的 UI 框架?

java - 使用 WebSphere MQ v7.0 找不到 SYSTEM.BROKER 服务