@ControllerAdvice 用法
时间: 2023-10-27 17:23:32 浏览: 47
@ControllerAdvice是一个增强版的@Controller,它主要用于处理全局数据。一般情况下,我们会结合@ExceptionHandler、@ModelAttribute以及@InitBinder等注解一起使用。通过@ControllerAdvice,我们可以统一处理全局异常,预设全局数据以及对请求参数进行预处理。
@ControllerAdvice可以配置全局数据,通过使用@ModelAttribute注解来实现。我们可以在一个类中使用@ControllerAdvice注解,并在该类中定义一个带有@ModelAttribute注解的方法来配置全局数据。例如,我们可以创建一个GlobalConfig类,使用@ModelAttribute注解的方法来配置全局数据。
@ControllerAdvice的用法可以分为以下几个步骤:
1. 处理全局异常:使用@ExceptionHandler注解来捕获并处理全局的异常。
2. 预设全局数据:使用@ModelAttribute注解来配置全局的数据,可以在一个类中定义多个带有@ModelAttribute注解的方法来配置不同的全局数据。
3. 请求参数预处理:使用@InitBinder注解来对请求参数进行预处理,例如进行类型转换或者数据验证等操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [@ControllerAdvice 用法](https://blog.csdn.net/ElendaLee/article/details/127431699)[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_1"}}] [.reference_item style="max-width: 50%"]
- *3* [@ControllerAdvice注解的使用](https://blog.csdn.net/czxboys/article/details/126137438)[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_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]