我想将我创建的动态代理应用于应用程序中所有的类。但是,我也希望能够使用依赖注入(Spring)而不是编写类似MyDynamicProxy.newInstance(new Account())的代码;
其中newInstance是:
public static Object newInstance(Object object) {
return Proxy.newProxyInstance(object.getClass().getClassLoader(),object.getClass().getInterfaces(),new LoggingProxy(object));
}
如何将依赖注入和动态代理应用于应用程序中的所有类?
最佳答案
您可以尝试使用org.springframework.beans.factory.config.BeanPostProcessor.postProcessAfterInitialization(Object, String)
并返回代理实例而不是原始bean。
注意:如果只是记录您的需求,那么使用Spring的AOP支持可能会更简单,这将允许您在所有Spring托管bean上定义简单的记录方面。