Try Catch: Exception Handling in JSP

Obsah:

Anonim

Čo je to výnimka JSP?

Výnimky sa vyskytujú v prípade chyby v kóde vývojárom alebo internej chyby systému.

Spracovanie výnimiek v JSP je rovnaké ako v jave, kde spravujeme výnimky pomocou blokov try catch.

Na rozdiel od Javy existujú v JSP výnimky aj vtedy, keď dôjde k chybe v kóde.

Výnimky sú troch typov:

  1. Začiarknutá výnimka
  2. RuntimeException
  3. ErrorsException

Začiarknuté výnimky

Spravidla ide o chybu používateľa alebo problémy, ktoré vývojár nevidí, označujeme ako kontrolované výnimky.

Niektoré z príkladov sú:

  1. FileNotFoundException: Toto je začiarknutá výnimka (keď sa pokúsi nájsť súbor, keď sa nenájde na disku).
  2. Výnimka IO: Toto sa tiež kontroluje výnimka, ak sa počas čítania alebo zápisu súboru vyskytla nejaká výnimka, potom sa vyvolá výnimka IO.
  3. SQLException: Toto je tiež skontrolovaná výnimka, keď je súbor pripojený k databáze SQL, a je problém s pripojením databázy SQL, potom sa vyvolá výnimka SQLException.

Výnimky za behu

Výnimky za behu sú tie, ktorým sa programátor mohol vyhnúť. V čase kompilácie sú ignorované.

Niektoré z príkladov sú:

  1. ArrayIndexOutOfBoundsException: Toto je výnimka za behu, keď veľkosť poľa presahuje prvky.
  2. ArithmeticException: Toto je tiež výnimka za behu, keď existujú matematické operácie, ktoré nie sú za normálnych podmienok povolené, napríklad vydelením čísla číslom 0 sa udelí výnimka.
  3. Výnimka NullPointer: Toto je tiež výnimka za behu, ktorá sa vyvolá, keď je premenná alebo objekt nulový, keď sa k nemu pokúšame získať prístup. Toto je veľmi častá výnimka.

Chyby:

Problém nastáva v dôsledku kontroly používateľom alebo programátorom. Ak zásobník pretečie, môže dôjsť k chybe.

Niektoré príklady chyby sú uvedené nižšie:

  1. Chyba: Táto chyba je podtriedou hádzateľnej, ktorá naznačuje vážne problémy, ktoré aplikácia nedokáže zachytiť.
  2. Chyba inštancie: Táto chyba nastane, keď sa pokúsime vytvoriť inštanciu objektu, a nepodarí sa nám to.
  3. Interná chyba: Táto chyba nastane, keď dôjde k chybe z JVM, tj. Java Virtual Machine.

Výnimka chyby

Je to inštancia vyhadzovacej triedy a používa sa na chybových stránkach.

Niektoré metódy hodovej triedy sú:

  • Public String getMessage () - vráti správu o výnimke.
  • Public throwablegetCause () - vráti príčinu výnimky
  • Public printStackTrace () - vráti stacktrace výnimky.

Príklad

Výnimka_example.jsp

<% @ page errorPage = "guru_error.jsp"%><% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Výnimkový Guru JSP1 <%int num = 10;if (počet == 10){hodiť novú RuntimeException ("Chyba stavu !!!");}%>

Guru_error.jsp

<% @ page isErrorPage = "true"%><% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Stránka výnimiek Guru 

Vyskytla sa výnimka Guru

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

Vysvetlenie kódu:

Výnimka_example.jsp

Riadok kódu 1: Tu nastavujeme chybovú stránku na guru_error.jsp, ktorá sa použije pri presmerovaní chyby.

Riadok kódu 15: berieme premennú num a nastavujeme ju na 10 a kontrolujeme podmienku, ak je num 10, aby sme vyhodili Runtime Exception so správou ako Error Condition.

Guru_error.jsp

Riadok kódu 1: Tu nastavujeme isErrorPageattribute na true.

Riadok kódu 12: Výnimka bola vyvolaná v exception_example.jsp pomocou objektu throw a táto výnimka sa tu zobrazí, pretože atribút IsErrorPage je označený ako true. Pomocou objektu výnimky (toto je objekt, ktorý umožňuje prístup k údajom o výnimkách pomocou JSP.) Objekt sa pokúšame vytlačiť stacktrace chyby, ku ktorej došlo v exception_example.jsp.

Po vykonaní vyššie uvedeného kódu získate nasledujúci výstup:

Výkon:

Bola vyvolaná výnimka, ktorá bola vyhodená z exception_example.jsp pomocou throw objektu runtime výnimky a dostaneme vyššie uvedený kód.

Zavolá sa tiež guru_error.jsp, z ktorého v tomto súbore došlo k výnimke Guru.

Zhrnutie:

Tu sme sa v tomto tutoriáli dozvedeli o výnimkách a v tutoriáli sme si vzali príklad runtime výnimiek.