开发者

Is there a spring lazy proxy factory in Spring?

Wicket has this device called a lazy proxy factory. Given:

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

the idea is to auto-generate a proxy in place of 'beanx', and th开发者_如何学编程en only initialize beanx if and when something actually calls a method on it.

It seems as if this might be a core Spring capability. Is it there somewhere?


See LazyInitTargetSource; that might do what you want. It requires use of lazy-init="true" on the target bean as well, though.


Spring singleton beans, the closest thing to what you want, are created when the spring context is initialized: http://static.springsource.org/spring/docs/2.0.x/reference/beans.html#beans-factory-scopes. So I believe the short answer is "no." You can implement your own scope to do this by extending the Spring classes quite easily, though.


Spring session/request scope is implemented using the technique you describe, but it is only intended to handle transitions between scope cardinalities, not instance creation. So spring uses the same concepts, but you'd probably have to create your own implementation.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜