국비 79 - 예외처리(스프링)

냐아암·2023년 8월 13일
0

국비

목록 보기
90/114

📍 Spring 예외 처리 방법

  • 메소드 단위로 처리(try-catch)
  • 클래스 단위로 처리(@ExceptionHandler)
  • 프로그램 단위(전역) 처리(@ControllerAdvice)
package edu.kh.project.common;

import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;

// 예외 처리용 컨트롤러(프로젝트 전역)
@ControllerAdvice
public class ExceptionController {

	@ExceptionHandler(Exception.class)
	public String exceptionHandler(Exception e, Model model) {

		// Exception e : 예외 정보를 담고 있는 객체
		// Model model : 데이터 전달용 객체(request scope가 기본)

		e.printStackTrace(); // 예외 내용/발생 메소드 확인

		model.addAttribute("e", e);

		// forward 진행
		// -> View Resolver의 prefix, suffix를 붙여 JSP 경로로 만듦
		return "common/error";
	}


}
profile
개발 일지

0개의 댓글