SpringBoot2.0 異常處理
1.建立 HttpErrorController類,實現ErrorPageRegistrar
/*
* 檔名:HttpErrorController.java
* 版權:Copyright 北大青鳥蘭州校區周子敖、李國賢版權所有
* 描述: 中國蘭州法院網官網
* 修改人: 周子敖
* 修改時間:2018-12-24
* 修改內容:定義 ErrorPageConfig,配置錯誤狀態與對應訪問路徑
* 修改單號:LZFY001
*/
package team.haierbrother.lzcourt.erro;
import org.springframework.boot.web.server.ErrorPage;
import org.springframework.boot.web.server.ErrorPageRegistrar;
import org.springframework.boot.web.server.ErrorPageRegistry;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* HttpErrorController 頁面攔截跳轉
* 基於SpringBoot2.0的ErrorPageConfig頁面攔截跳轉
* @author 周子敖
* @version 1.0, 2018-12-24
* @since CommonLog1.0
*/
@Component
public class implements ErrorPageRegistrar {
@Override
public void registerErrorPages(ErrorPageRegistry errorPageRegistry) {
/*1、按錯誤的型別顯示錯誤的網頁*/
/*錯誤型別為404,找不到網頁的,預設顯示404.html網頁*/
ErrorPage e404 = new ErrorPage(HttpStatus.NOT_FOUND, "/error/404");
//錯誤型別為500,表示伺服器響應錯誤,預設顯示500.html網頁
ErrorPage e500 = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error/500");
errorPageRegistry.addErrorPages(e404, e500);
}
}
2.建立ErrorController控制器實現頁面跳轉
/*
* 檔名:ErrorController.java
* 版權:Copyright 北大青鳥蘭州校區周子敖、李國賢版權所有
* 描述: 中國蘭州法院網官網
* 修改人: 周子敖
* 修改時間:2018-12-24
* 修改內容:重寫基於SpringBoot2.0的ErrorPageConfig頁面攔截跳轉
* 修改單號:LZFY001
*/
package team.haierbrother.lzcourt.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* ErrorController 頁面攔截跳轉
* 基於SpringBoot2.0的ErrorPageConfig頁面攔截跳轉
* @author 周子敖
* @version 1.0, 2018-12-24
* @since CommonLog1.0
*/
@Controller
@RequestMapping("/error")
public class ErrorController {
/**
* 404頁面
*/
@GetMapping(value = "/404")
public String error_404() {
return "errorpages/404";
}
/**
* 500頁面
*/
@GetMapping(value = "/500")
public String error_500() {
return "errorpages/500";
}
}