java - 动态代理和检查异常

标签 java dynamic-proxy

如何让我的动态代理抛出已检查的异常?

我需要一个接口(interface)的透明包装器,它有时会抛出已检查的异常,例如 IOException。没有第 3 方 AOP 或编写我自己的代理是否可能?手动修改接口(interface)的所有 20 个方法也不是一种选择。

最佳答案

您可能正在寻找的是这个,正如康拉德在上面提到的那样:

public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
    try {
        Object value = method.invoke(delegate, args);
        return value;
    }
    catch (InvocationTargetException ex) {
        throw ex.getCause();
    }
}

来源:https://web.archive.org/web/20120130204437/http://benpryor.com/blog/2006/08/15/java-dynamic-proxies-and-invocationtargetexception/

关于java - 动态代理和检查异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3715298/

相关文章:

java - 东西是如何嵌入到浏览器中的?

java - 聚焦时如何更改javafx中的菜单颜色

java - JDK动态代理和CGLib有什么区别?

java - 代理模式与覆盖

java - Byte.decode ("10") 和 Byte.valueOf ("10") - 有什么区别?

java - Java 对象数组创建后的内存大小是多少?

java - 使用 Spring AOP 时是否代理了所有方法?

java - 允许动态代理转换到任何兼容的接口(interface)。不管

entity-framework - EF 4.0 动态代理 POCO 对象与目标类型不匹配

java - Mockito 注入(inject)嵌套 bean