前幾節小博老師給你們介紹了SpringMVC異常處理兩種方法,今天繼續介紹使用註解方式進行異常處理的方式@ExceptionHandler。 @ExceptionHandler只有一個參數value,指定須要處理的異常類型 。是一個數組類型。如:json
@ExceptionHandler(value={NullPointerException.class,IllegalArgumentException.class})數組
若是隻須要處理一種類型的異常,能夠簡寫爲:@ExceptionHandler(NullPointerException.class)。code
固然,也能夠不加參數,攔截全部類型的異常。blog
須要注意的是,該註釋必須與出錯的方法寫在同一個controller裏。下面是一個異常處理示例:ip
以上定義的Controller,全部映射方法出錯,都將調用exp方法進行異常處理。固然,咱們能夠定義多個方法,並設定每一個方法註解@ExceptionHandler的異常類型參數,這樣程序邏輯性會更加清晰。get
使用@ExceptionHandler註解的一個優勢是,在須要返回json數據錯誤信息的時候特別有用。在@ExceptionHandler註解的方法上再加上@ResponseBody註解便可。io