CGLIB,Spring和构造函数注入

时间:2012-03-27 17:10:19

标签: spring cglib

我想使用cglib作为spring的代理机制。问题是,我有一些豆子由构造函数注入他们的dependecies,我无法改变这一点。 CGLIB似乎并不那么喜欢,也不会让我实例化那个bean。它周围有什么办法吗? (例如,我可以禁用某些bean的cglib代理吗?或者更好的是,我可以让CGLIB代理这些bean吗?)

提前Tx

2 个答案:

答案 0 :(得分:7)

简短的回答是你不能代理这样的bean。请参阅SPR-3150 jira issue。

答案 1 :(得分:1)

由于Eugene对他的简短回答可能是正确的,另一种方法是使用adapterdecorator模式,使用组合而不是继承。代理您的装饰器,让它将原始bean作为依赖。

或者做一些明智的事情并切换到基于接口的代理。