CustomExceptionHandler 생성

// 모든 에러 잡아내는 어노테이션
@ControllerAdvice // 응답 에러 컨트롤러 (view==파일 리턴)
public class CustomExceptionHandler {
@ExceptionHandler(Exception.class)
public @ResponseBody String error1(Exception e){
return Script.back(e.getMessage());
}
}
Exception 부분 수정
원래 return null;

Exception이 터지면서 ExceptionHandler 실행

null이 이제 return 되지 않으므로 코드 수정

Script 코드
public class Script {
public static String back(String msg) {
StringBuilder sb = new StringBuilder();
sb.append("<script>");
sb.append("alert('"+msg+"');");
sb.append("history.back();");
sb.append("</script>");
return sb.toString();
}
public static String href(String path) {
StringBuilder sb = new StringBuilder();
sb.append("<script>");
sb.append("location.href='"+path+"';");
sb.append("</script>");
return sb.toString();
}
public static String href(String path, String msg) {
StringBuilder sb = new StringBuilder();
sb.append("<script>");
sb.append("alert('"+msg+"');");
sb.append("location.href='"+path+"';");
sb.append("</script>");
return sb.toString();
}
}
Share article