## 需求
现在习惯使用ajax的方式发起请求,所以经常需要服务端返回一个json或者字符串。
控制全局的异常处理。
如果在单个方法中使用try,catch把方法包裹起来,工作量大,而且会异常的抛出而导致@Transactional注解的方法事务不会回滚。
说明:
使用@ControllerAdvice注解
使用@ExceptionHandler注解
|
该注解是spring2.3以后新增的一个注解,主要是用来Controller的一些公共的需求的低侵入性增强提供辅助,作用于@RequestMapping标注的方法上。
|
该注解是配合@ExceptionHandler一起使用的注解,自定义错误处理器,可自己组装json字符串,并返回到页面。
代码:
创建一个全局异常处理类,如下:
如果向实现,不同的异常有不同的操作的话,只需要将 @ExceptionHandler的value的值不一样就可以了,可以同时实现多个不同的异常处理,但不能出现包含状态。
第一种方法
|
|
第二种方法(也是我现在用的)
|
|