春天有一个春天懒惰的代理工厂吗?

时间:2010-03-06 02:49:46

标签: spring proxy lazy-evaluation

Wicket将这个设备称为懒惰代理工厂。给出:

<property name="foo" ref="beanx"/>

这个想法是自动生成一个代理来代替'beanx',然后只有在实际调用某个方法时才初始化beanx。

好像这可能是Spring的核心功能。它在某处吗?

3 个答案:

答案 0 :(得分:3)

LazyInitTargetSource;这可能会做你想要的。但是,它也需要在目标bean上使用lazy-init =“true”。

答案 1 :(得分:0)

弹簧上下文初始化时,会创建与您想要的最接近的Spring单例bean:http://static.springsource.org/spring/docs/2.0.x/reference/beans.html#beans-factory-scopes。所以我认为简短的回答是“不”。但是,您可以通过非常轻松地扩展Spring类来实现自己的范围。

答案 2 :(得分:0)

Spring会话/请求范围是使用您描述的技术实现的,但它仅用于处理范围基数之间的转换,而不是实例创建。所以spring使用相同的概念,但您可能必须创建自己的实现。