티스토리 뷰
Spring Boot에서 에러 페이지 처리하기
아래 두가지만 하면 끝~~~
1. ErrorController를 implements 해서 에러 컨트롤러를 만든다.
2. error 페이지를 만든다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | import java.util.Date; import javax.servlet.RequestDispatcher; import javax.servlet.http.HttpServletRequest; import org.springframework.boot.web.servlet.error.ErrorController; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import lombok.extern.slf4j.Slf4j; @Controller @Slf4j public class CustomErrorController implements ErrorController { private static final String ERROR_PATH = "/error"; @Override public String getErrorPath() { return ERROR_PATH; } @RequestMapping("/error") public String handleError(HttpServletRequest request, Model model) { Object status = request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE); HttpStatus httpStatus = HttpStatus.valueOf(Integer.valueOf(status.toString())); log.info("httpStatus : "+httpStatus.toString()); model.addAttribute("code", status.toString()); model.addAttribute("msg", httpStatus.getReasonPhrase()); model.addAttribute("timestamp", new Date()); return "error/error"; } } | cs |
error 페이지
1 2 3 4 5 6 | <div layout:fragment="content"> <h1>Error Page</h1> error code : <span th:text="${code}"></span> <br>error msg : <span th:text="${msg}"></span> <br>timestamp : <span th:text="${timestamp}"></span> </div> | cs |
에러 페이지를 처리하는 여러 형태가 있지만 이 방법이 가장 심플합니다. 다른 설정 전혀 안해도 됩니다.
참고
Spring Boot: Customize Whitelabel Error Page
- https://www.baeldung.com/spring-boot-custom-error-page
Github 링크 : https://github.com/kkaok/examples
'Spring Frameworks' 카테고리의 다른 글
Spring boot - 빌드 profile 설정 (0) | 2019.02.20 |
---|---|
Spring Boot - 복수 데이터소스 설정하기 (0) | 2019.02.14 |
springboot 2.x @PutMapping 값 전달 안되는 에러 처리 (0) | 2019.02.13 |
컨트롤러 Object에 Pathvariables, Parameters 바인딩시 우선순위 변경 (0) | 2019.02.08 |
spring boot 기반 프로젝트 공통 개발 (0) | 2019.01.30 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- oracle
- SHEETJS
- 설정
- REST
- sample
- java
- 예제
- UI
- lombok
- 엑셀
- AG-GRID
- mapToList
- 스프링
- example
- Javascript
- cache
- springboot
- thymeleaf
- ag grid
- mybatis
- 샘플
- spring
- 타임리프
- RESTful
- restful서비스
- 그리드
- Spring Boot
- listToMap
- 메시지
- 스프링부트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함