为什么@ExceptionHandler(Exception.class)都获取不到异常 CannotAcquireLockException
时间: 2024-05-21 09:18:24 浏览: 270
可能是因为CannotAcquireLockException是一个特定的异常,不是通用的Exception类的子类,所以@ExceptionHandler(Exception.class)无法捕获它。您可以尝试使用@ExceptionHandler(CannotAcquireLockException.class)来捕获它。此外,如果您使用的是Spring Boot,则可以考虑使用@ControllerAdvice注释来捕获全局异常,这样可以更好地处理不同类型的异常。
相关问题
为什么@ExceptionHandler(SQLException.class)和@ExceptionHandler(Exception.class)都获取不到MySQLTransactionRollbackException异常
MySQLTransactionRollbackException是SQLException的子类,因此在处理MySQLTransactionRollbackException异常时,应该使用@ExceptionHandler(SQLException.class)注解来捕获异常。如果SQLException也无法捕获此异常,可能是因为MySQLTransactionRollbackException是MySQL数据库的特定异常,需要在连接MySQL数据库时启用特定的配置来支持此异常的捕获。
@ResponseBody @ExceptionHandler(Exception.class)
@ExceptionHandler(Exception.class)和@ResponseBody注解是在处理Spring MVC中的异常时常用的注解。@ExceptionHandler(Exception.class)注解用于指定处理特定异常的方法,而@ResponseBody注解用于指定方法返回的结果是直接作为响应体返回给客户端。
当@ControllerAdvice注解用于类上,并且指定了assignableTypes属性为HelloWorld.class时,该类中的@ExceptionHandler(Exception.class)方法会作用于HelloWorld类中抛出的异常。该方法会接收一个Exception类型的参数,也可以选择接收HttpServletRequest等其他参数,然后返回一个String类型的结果,其内容包括请求的URI、抛出的异常类名和异常消息。
在HelloWorld类中,也定义了一个@ExceptionHandler(ArithmeticException.class)方法和一个@ResponseBody注解的@ExceptionHandler(ArithmeticException.class)方法。这两个方法分别处理ArithmeticException类型的异常,且返回的结果分别是一个视图和一个String。
因此,@ResponseBody @ExceptionHandler(Exception.class)表示在处理异常时,将返回的结果直接作为响应体返回给客户端。 [2<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [@ExceptionHandler(Exception.class)和@ControllerAdvice](https://blog.csdn.net/liangwenrong/article/details/106562371)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [springboot全局异常处理](https://download.csdn.net/download/weixin_38732277/13740421)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文