스프링 예외 처리

김덕근·2023년 4월 27일
0

Spring

목록 보기
8/19

스프링 예외 처리 방법 (3가지, 중복 사용 가능)

1 순위

메서드 별로 예외처리 (try-catch / throws)

2 순위

하나의 컨트롤러에서 발생하는 예외를 모아서 처리
-> @ExceptionHandler (메서드에 작성)

3 순위

전역 (웹 애플리케이션)에서 발생하는 예외를 모아서 처리
@ControllerAdvice (클래스에 작성)


회원 컨트롤러에서 발생하는 모든 예외를 모아서 처리

MemberController.java

@ExceptionHandler(Exception.class)
public String exceptionHandler(Exception e, Model model) {
e.printStackTrace();
	
model.addAttribute("errorMessage", "서비스 이용 중 문제가 발생했습니다.");
model.addAttribute("e", e);
	
return "common/error";
}

main.controller

ExceptionController.java

@ControllerAdvice
public class ExceptionController {
	
	// sql Exception, 등 다른 예외처리 여러개 만들기
	@ExceptionHandler(Exception.class)
	public String exceptionHandler(Exception e, Model model) {
		e.printStackTrace();
		
		model.addAttribute("errorMessage", "서비스 이용 중 문제가 발생했습니다.");
		model.addAttribute("e", e);
		
		return "common/error";
	}

}
profile
안녕하세요!

0개의 댓글