Prøv Catch: Undtagelseshåndtering i JSP

Indholdsfortegnelse:

Anonim

Hvad er JSP-undtagelse?

Undtagelser opstår, når der er en fejl i koden, enten af ​​udvikleren eller intern fejl fra systemet.

Undtagelseshåndtering i JSP er den samme som i java, hvor vi administrerer undtagelser ved hjælp af prøvefangstblokke.

I modsætning til Java er der undtagelser i JSP også når der er en fejl i koden.

Undtagelser er af tre typer:

  1. Kontrolleret undtagelse
  2. RuntimeException
  3. ErrorsException

Kontrollerede undtagelser

Det er normalt en brugerfejl, eller problemer, der ikke ses af udvikleren, betegnes som kontrollerede undtagelser.

Nogle af eksemplerne er:

  1. FileNotFoundException: Dette er en markeret undtagelse (hvor den forsøger at finde en fil, når filen ikke findes på disken).
  2. IO-undtagelse: Dette er også markeret med undtagelse, hvis der er nogen undtagelse, der opstod under læsning eller skrivning af en fil, hæves IO-undtagelsen.
  3. SQLException: Dette er også en kontrolleret undtagelse, når filen er forbundet med SQL-database, og der er et problem med tilslutningen af ​​SQL-databasen, så hæves SQLException

Runtime Undtagelser

Runtime-undtagelser er den, som programmøren kunne have undgået. De ignoreres på tidspunktet for udarbejdelsen.

Nogle af eksemplerne er:

  1. ArrayIndexOutOfBoundsException: Dette er en runtime-undtagelse, når array-størrelse overstiger elementerne.
  2. ArithmeticException: Dette er også en runtime-undtagelse, når der er matematiske operationer, som ikke er tilladt under normale forhold, for eksempel at dele et tal med 0 giver en undtagelse.
  3. NullPointer-undtagelse: Dette er også en runtime-undtagelse, der hæves, når en variabel eller et objekt er nul, når vi prøver at få adgang til det samme. Dette er en meget almindelig undtagelse.

Fejl:

Problemet opstår på grund af brugerens eller programmørens kontrol. Hvis stakken overløber, kan der opstå fejl.

Nogle eksempler på fejlen er anført nedenfor:

  1. Fejl: Denne fejl er en underklasse af kastbar, som indikerer alvorlige problemer, som en applikation ikke kan fange.
  2. Instantieringsfejl: Denne fejl opstår, når vi forsøger at instantiere et objekt, og det undlader at gøre det.
  3. Intern fejl: Denne fejl opstår, når der opstår en fejl fra JVM, dvs. Java Virtual Machine.

Fejlundtagelse

Det er en forekomst af den kastbare klasse, og den bruges på fejlsider.

Nogle metoder til kastbar klasse er:

  • Offentlig streng getMessage () - returnerer meddelelsen om undtagelsen.
  • Public throwablegetCause () - returnerer årsagen til undtagelsen
  • Offentlig printStackTrace () - returnerer stacktrace for undtagelsen.

Eksempel

Undtagelseseksempel.jsp

<% @ side errorPage = "guru_error.jsp"%><% @ side sprog = "java" contentType = "tekst / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Undtagelse Guru JSP1 <%int num = 10;hvis (num == 10){smid ny RuntimeException ("Fejltilstand !!!");}%>

Guru_error.jsp

<% @ side isErrorPage = "sand"%><% @ side sprog = "java" contentType = "tekst / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru-undtagelsesside 

Guruundtagelse er sket

<% exception.printStackTrace (respons.getWriter ()); %>

Forklaring af koden:

Undtagelseseksempel.jsp

Kodelinje 1: Her indstiller vi fejlsiden til guru_error.jsp, som vil blive brugt, når fejlen omdirigeres.

Kodelinje 15: Vi tager en variabel num og sætter den til 10 og kontrollerer en tilstand, hvis num er 10, så kaster vi en Runtime Exception med meddelelsen som Error Condition.

Guru_error.jsp

Kodelinje 1: Her indstiller vi isErrorPageattribute til true.

Kodelinje 12: Undtagelsen er hævet i exception_example.jsp ved hjælp af kast-objekt, og denne undtagelse vil blive vist her som IsErrorPage-attribut er markeret som sand. Brug af undtagelsen (dette er et objekt, der gør det muligt at få adgang til undtagelsesdataene af JSP.) -Objektet, vi prøver at udskrive stacktrace af den fejl, der opstod i exception_example.jsp.

Når du udfører ovenstående kode, får du følgende output:

Produktion:

Undtagelsen er hævet, som blev kastet fra exception_example.jsp ved hjælp af kast-objekt af runtime-undtagelse, og vi får ovenstående kode.

Også kaldes guru_error.jsp, hvorfra Guru Undtagelse er sket fra denne fil.

Resumé:

Her har vi lært om undtagelser i denne vejledning og taget et eksempel på runtime-undtagelse i selvstudiet.