java - 将动态代理应用于应用程序中的所有类

标签 java spring dependency-injection proxy dynamic-proxy

我想将我创建的动态代理应用到属于我的应用程序的所有类。但是,我也希望能够使用依赖注入(inject)(Spring)而不是编写类似 MyDynamicProxy.newInstance(new Account()); 的内容

newInstance 所在位置:

public static Object newInstance(Object object) {             
return Proxy.newProxyInstance(object.getClass().getClassLoader(),object.getClass().getInterfaces(),new LoggingProxy(object));        
}  

如何将依赖注入(inject)和动态代理应用于应用程序中的所有类?

最佳答案

您可以尝试使用org.springframework.beans.factory.config.BeanPostProcessor.postProcessAfterInitialization(Object, String)并返回代理实例而不是原始bean。

注意,如果您只是想记录日志,那么考虑使用 Spring 的 AOP 支持可能会更简单,这将允许您在所有 Spring 托管 bean 上定义一个简单的日志记录方面。

关于java - 将动态代理应用于应用程序中的所有类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5880687/

相关文章:

java - 连接在不活动时间后挂起

java - 为 Spring 方法编写 JUnit 测试用例时出现问题

java - 在java中的单元测试的服务类中注入(inject)不断增长的依赖关系的最佳方法是什么

java - play框架scala获取连接表属性

java - 使用 Jackson 和 Spring Boot 的条件 JsonProperty

Java:为什么我的点运算符不起作用?

java - 组合@PathVariable和@RequestBody

java - Eclipse 找不到 Spring 配置文件

dependency-injection - 自定义成员(member)提供者和 Unity 注入(inject)

javascript - 控制 WebView 元素不起作用