@ControllerAdvice注解在Spring中的使用有以下几个作用:
1. 全局异常处理:使用@ControllerAdvice注解可以在应用程序中统一处理异常,避免在每个Controller中都重复处理异常。通过在@ControllerAdvice注解中定义异常处理方法,可以捕获并处理应用程序中抛出的异常,并返回统一的错误信息或页面。
2. 全局数据绑定:通过在@ControllerAdvice注解中定义@ModelAttribute注解的方法,可以将一些通用的数据绑定到模型中,使得这些数据在每个请求中都可用。
3. 全局数据预处理:通过在@ControllerAdvice注解中定义@InitBinder注解的方法,可以对请求参数进行预处理,如字符串转日期、字符串去除空格等操作。
4. 全局数据处理:通过在@ControllerAdvice注解中定义@RequestBody和@ResponseBody注解的方法,可以对请求和响应的数据进行全局的处理,如格式转换、加密解密、数据校验等操作。
总结来说,@ControllerAdvice注解可以通过统一处理异常、全局数据绑定、全局数据预处理和全局数据处理等功能,提高代码的重用性和可维护性,减少重复代码的编写。