java - Spring异常拦截器

标签 java spring exception annotations

我有这样的代码:

 public void method1(){
  try{
      method2();
    }catch(Exception e){
        e.printStackTrace();
    }
 }
 public void method2(){
       throw new RuntimeException();
    }

我需要创建一个注释,它将处理这个异常并引发另一个异常。

@MyExceptionAnnotation(message="MyExceptionTest", value = MyException.class)
public void method2(){
       throw new SpringException();
    }

我尝试为其制作 beanpostprocessor,但没有成功。

最佳答案

您不应该向方法提供如何处理抛出的异常的信息。这是方法使用者的责任。如果你做某事 eq 抛出异常那么

catch(异常 e) { 异常处理程序.handle(e); } 其中,ExceptionHandler 知道如何处理每个异常。或者只看@ExceptionHandler

如果你仍然想有一个特定的方法来处理特定的方法异常,请参阅AOP和spring-aspect

关于java - Spring异常拦截器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56220171/

相关文章:

java - 小程序计算和监听器问题和外观

java - 使用 JSP 处理文本文件的最简单方法是什么?

java - 数组常量只能在初始化器中使用

Java - 计算字符串中符号的数量

java - 为 Spring JPA 存储库方法配置切入点

java - 当spring调用get(Object o, Class<T> aClass)函数时使用@Cacheable

java - 在 Eclipse 中是否有向方法签名添加异常的快捷方式?

c++ - std::uncaught_exception 和 Microsoft __uncaught_exception 之间的区别?

java - 使用 Kotlin DSL 配置 Java 规范时出现 Gradle 编译错误

java - 即使没有安全性,SpringBoot 401 UnAuthorized