【发布时间】:2012-02-23 11:19:50
【问题描述】:
我正在尝试学习 Java 中的动态代理。
我知道它们是如何工作的,但我找不到解决我的问题的方法:给定一个接口及其实现方法 a()、b() 和 c() 嵌套在另一个中(比如说 a()调用 b() 调用 c()),我想代理我的对象来记录对方法的每次调用。
所以我编写了我的 InvocationHandler 代码,例如 invoke() 方法在执行之前打印了一个日志行。
但是当我调用 proxy.a() 时,只记录对方法 a() 的调用,而不是整个方法链。
我错过了什么?代理的目标必须是代理本身吗?
【问题讨论】:
标签: java proxy nested invocationhandler