@ControllerAdvice注解在Spring中的使用有以下幾個作用:
- 全局異常處理:使用@ControllerAdvice注解可以在應用程序中統一處理異常,避免在每個Controller中都重復處理異常。通過在@ControllerAdvice注解中定義異常處理方法,可以捕獲并處理應用程序中拋出的異常,并返回統一的錯誤信息或頁面。
- 全局數據綁定:通過在@ControllerAdvice注解中定義@ModelAttribute注解的方法,可以將一些通用的數據綁定到模型中,使得這些數據在每個請求中都可用。
- 全局數據預處理:通過在@ControllerAdvice注解中定義@InitBinder注解的方法,可以對請求參數進行預處理,如字符串轉日期、字符串去除空格等操作。
- 全局數據處理:通過在@ControllerAdvice注解中定義@RequestBody和@ResponseBody注解的方法,可以對請求和響應的數據進行全局的處理,如格式轉換、加密解密、數據校驗等操作。
總結來說,@ControllerAdvice注解可以通過統一處理異常、全局數據綁定、全局數據預處理和全局數據處理等功能,提高代碼的重用性和可維護性,減少重復代碼的編寫。