【发布时间】:2009-02-12 10:25:20
【问题描述】:
我有一个像这样的单例 bean 定义:
<bean id="exampleBean" class="com.examples.ExampleBean">
<property name="exampleBean2">
<bean class="com.examples.ExampleBean2" />
</property>
</bean>
ExampleBean 可能在哪里:
public class ExampleBean {
private ExampleBean2 exampleBean2;
public ExampleBean() { }
public ExampleBean2 getExampleBean2() { return exampleBean2; }
public void setExampleBean2(ExampleBean2 exampleBean2) { this.exampleBean2 = exampleBean2; }
}
问题在于,在某些情况下,com.examples.ExampleBean2 class 可能在运行时不存在,当 IoC 尝试实例化 exampleBean 时会导致错误。
我需要忽略来自 IoC 的此错误,并允许创建 exampleBean,但保留 exampleBean2 属性 null。
所以问题是:这有可能吗?
感谢您的所有帮助。
【问题讨论】:
-
com.examples.ExampleBean2 是单例吗?
-
实际上 ExampleBean 和 ExampleBean2 都是单例 bean,因为我认为它是 Spring IoC 默认范围
标签: java spring dependency-injection inversion-of-control