JSP의 예외 처리
JSP에서 예외란 무엇입니까?
예외 JSP에서는 개발자에 의해 코드에 오류가 있거나 시스템 내부 오류가 있을 때 발생합니다. JSP의 예외 처리는 JSP와 동일합니다. Java Try Catch 블록을 사용하여 예외를 관리합니다. 같지 않은 Java, 코드에 오류가 없는 경우에도 JSP에는 예외가 있습니다.
JSP의 예외 유형
JSP의 예외에는 세 가지 유형이 있습니다.
- 확인된 예외
- 런타임 예외
- 오류 예외
확인된 예외
일반적으로 개발자가 보지 못하는 사용자 오류나 문제를 체크된 예외라고 합니다. 체크된 예외의 몇 가지 예는 다음과 같습니다.
- FileNotFoundException: 확인된 예외입니다(디스크에서 파일을 찾을 수 없을 때 파일을 찾으려고 시도하는 경우).
- IO 예외: 파일을 읽거나 쓰는 동안 예외가 발생한 경우에도 검사 예외가 발생하며 IO 예외가 발생합니다.
- SQL예외: 이것은 파일이 연결될 때에도 확인된 예외입니다. SQL 데이터베이스이고 SQL 데이터베이스 연결에 문제가 있는 경우 SQLException이 발생합니다.
런타임 예외
런타임 예외는 프로그래머가 피할 수 있는 예외입니다. 컴파일 시 무시됩니다. 일부 런타임 예외 예는 다음과 같습니다.
- ArrayIndexOutOfBoundsException: 배열 크기가 다음을 초과하는 경우 런타임 예외입니다. 요소.
- 산술 예외: 이는 일반적인 조건에서 허용되지 않는 수학 연산이 있을 때의 런타임 예외입니다. 예를 들어, 숫자를 0으로 나누면 예외가 발생합니다.
- NullPointer 예외: 이는 변수나 객체에 액세스하려고 할 때 null인 경우 발생하는 런타임 예외이기도 합니다. 이는 매우 일반적인 예외입니다.
오류 :
문제는 사용자 또는 프로그래머의 제어로 인해 발생합니다. 스택 오버플로가 발생하면 오류가 발생할 수 있습니다. 오류의 몇 가지 예는 다음과 같습니다.
- 오류: 이 오류는 애플리케이션이 포착할 수 없는 심각한 문제를 나타내는 throwable의 하위 클래스입니다.
- 인스턴스화 오류: 이 오류는 객체를 인스턴스화하려고 시도했지만 실패했을 때 발생합니다.
- 내부 오류: JVM에서 에러가 발생했을 때 발생하는 에러입니다. Java 가상 기기.
오류 예외
throwable 클래스의 인스턴스이며 오류 페이지에서 사용됩니다. throwable 클래스의 일부 메서드는 다음과 같습니다.
- 공개 문자열 getMessage() – 예외 메시지를 반환합니다.
- 공개 throwablegetCause() – 예외의 원인을 반환합니다.
- 공개 printStackTrace()– 예외의 스택 추적을 반환합니다.
JSP에서 예외를 처리하는 방법
다음은 JSP에서 예외를 처리하는 방법의 예입니다.
Exception_example.jsp
<%@ page errorPage="guru_error.jsp" %> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Exception Guru JSP1</title> </head> <body> <% int num = 10; if (num == 10) { throw new RuntimeException("Error condition!!!"); } %> </body> </html>
Guru_error.jsp
<%@ page isErrorPage="true" %> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Exception Page</title> </head> <body> <p>Guru Exception has occurred</p> <% exception.printStackTrace(response.getWriter()); %> </body> </html>
코드 설명:
Exception_example.jsp
코드 라인 1: 여기서는 오류가 리디렉션될 때 사용되는 guru_error.jsp에 오류 페이지를 설정하고 있습니다.
코드 라인 15: 변수 num을 가져와서 10으로 설정하고 num이 10이면 조건을 확인한 다음 오류 조건이라는 메시지와 함께 런타임 예외를 발생시킵니다.
Guru_error.jsp
코드 라인 1: 여기서는 isErrorPage 속성을 true로 설정합니다.
코드 라인 12: 예외는 throw 객체를 사용하여 예외_example.jsp에서 발생했으며 해당 예외는 IsErrorPage 속성이 true로 표시되어 여기에 표시됩니다. 예외(JSP에서 예외 데이터에 액세스할 수 있도록 허용하는 개체) 개체를 사용하여 예외_example.jsp에서 발생한 오류의 스택 추적을 인쇄하려고 합니다.
위 코드를 실행하면 다음과 같은 출력이 나옵니다.
출력:
예외는 throw 객체를 사용하여 exception_example.jsp에서 throw된 런타임 예외에서 발생했고 위의 코드를 얻습니다. 또한 guru_error.jsp가 호출되어 이 파일에서 Guru Exception이 발생했습니다.
제품 개요
- JSP의 예외는 개발자에 의해 코드에 오류가 있거나 시스템 내부 오류가 있을 때 발생합니다.
- JSP의 예외에는 검사 예외, 런타임 예외, 오류 예외의 세 가지 유형이 있습니다.
- 확인된 예외는 일반적으로 사용자 오류이거나 개발자가 볼 수 없는 문제를 확인된 예외라고 합니다.
- 런타임 예외는 프로그래머가 피할 수 있었던 예외입니다. 컴파일 시에는 무시됩니다.
- 오류 예외는 throwable 클래스의 인스턴스이며 오류 페이지에서 사용됩니다.