웹프로젝트-4. -스프링부트- 에러페이지 만들기

2019. 9. 10. 13:06웹/웹프로젝트

https://eblo.tistory.com/50

 

Spring Boot에서 에러 페이지 처리하기

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 2..

eblo.tistory.com

https://velog.io/@godori/spring-boot-error

 

🌱 Spring Boot 에러 처리 페이지 만들기

스프링부트 웹 MVC 프로젝트에서 상태 코드에 따라 에러를 처리하고 뷰에 각각의 에러 페이지를 보여주는 웹 사이트를 만들어 보겠습니다. 🌱 웹 페이지 에러 처리 만약 Github에서 존재하지 않는 페이지로 접속할 경우 옥토비-완이 여러분을 맞아줍니다. 스프링 부트에서는 간단히 특정 위치에 html페이지만 추가해 주면 이런 에러 페이지를 구현할 수...

velog.io

 

위 두개의 블로그를 보고 따라했습니다.

스프링 부트 (스프링?) 에는 ErrorController 인터페이스가 존재해서 이를 상속시켜  에러페이지를 만들 수 있는 것 같습니다. 

 

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;
@Controller
public class CustomErrorController implements ErrorController{
	private static final String ERROR_PATH = "/error";
	@RequestMapping("/error")
    public String errorHtml(HttpServletRequest request,Model model) {
        Object status = request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE);
        HttpStatus httpStatus = HttpStatus.valueOf(Integer.valueOf(status.toString()));
        System.out.println( status.toString());
        model.addAttribute("code", status.toString());
        model.addAttribute("msg", httpStatus.getReasonPhrase());
        model.addAttribute("timestamp", new Date());
        return "error/error";
    }
	@Override
	public String getErrorPath() {
		// TODO Auto-generated method stub
		return ERROR_PATH;
	}

}

간단하게 위와 같이 하고 error.jsp 페이지를 구성,

main.jsp 에 일부러 int null; 등 에러를 발생시키고 페이지가 동작하는지 확인해보니

 

잘 뜨는 것을 확인해봤습니다. 에러페이지가 위와같이 뜨기만 하면 심심하니 다음에는 css를 조정시키면서 동적css를 간단하게 하겠습니다.

프로젝트는

프론트를 vue를 사용하기로 결정했습니다. vue도 조금씩 공부해보겠습니다.

반응형