【发布时间】:2011-11-14 11:48:55
【问题描述】:
我有一个依赖于 ServiceB 的 ServiceA。 serviceB 来自一个带有 lazy-init=true 的 spring bean 文件,即我只希望 serviceB 在我请求该 bean 时被初始化。
但是,我确实在整个应用程序中使用 ServiceA,并且当我们执行基于 setter 的注入时,ServiceB 会被初始化。
我希望 ServiceA 不初始化 ServiceB直到ServiceA 中任何需要 ServiceB 的方法被调用。这样做的一种方法是使用 Aspects 但我正在寻找最简单的解决方案,特别是在 serviceB 的 Spring XML 文件或 serviceB 中的一些注释或任何代理标志中。
【问题讨论】:
-
将 ServiceB 工厂传递给 ServiceA 怎么样?
标签: java spring inversion-of-control