3.17.5 @RestControlleradvice注解
3.17.5 @RestControlleradvice注解
org.springframework.web.bind.annotation.RestControlleradvice注解本身使用@ControllerAdvice和@ResponseBody注解。使用了@RestControllerAdvice注解的类会被看作一个ControllerAdvice,而该类中所有使用@ExceptionHandler注解的方法都默认使用@ResponseBody注解。@RestControllerAdvice注解的源代码如下:
1 |
|
示例 @RestControllerAdvice注解的使用
创建一个RestControllerAdviceTest项目,所有文件和配置基本和3.17.3节的RestControllerAdviceTest项目一致。
GlobalExceptionHandler.java
1 | package org.fkit.controller; |
GlobalExceptionHandler使用了@RestControllerAdvice注解,该类会被看成一个ControllerAdvice,同时该类中所有使用@ExceptionHandler注解的方法都默认使用了@ResponseBody注解, OrderErrorHandler方法会将Map集合数据转换成JSON格式并返回客户端。
测试结果和ControllerAdviceTest项目的测试结果一致,此处不再赘述。