Kokeile Catch: Exception Handlingia JSP: ssä

Sisällysluettelo:

Anonim

Mikä on JSP-poikkeus?

Poikkeuksia esiintyy, kun joko kehittäjän koodissa on virhe tai järjestelmän sisäinen virhe.

Poikkeusten käsittely JSP: ssä on sama kuin Java-sovelluksessa, jossa hallitsemme poikkeuksia kokeilulohkojen avulla.

Toisin kuin Java, JSP: ssä on poikkeuksia myös silloin, kun koodissa on virhe.

Poikkeuksia on kolme tyyppiä:

  1. Tarkistettu poikkeus
  2. Ajonaikainen poikkeus
  3. ErrorsException

Tarkistetut poikkeukset

Se on yleensä käyttäjävirhe tai ongelmia, joita kehittäjä ei näe, kutsutaan tarkistetuiksi poikkeuksiksi.

Joitakin esimerkkejä ovat:

  1. FileNotFoundException: Tämä on valittu poikkeus (jos se yrittää löytää tiedoston, kun tiedostoa ei löydy levyltä).
  2. IO-poikkeus: Tämä on myös valittu poikkeus, jos tiedoston lukemisen tai kirjoittamisen aikana on tapahtunut poikkeuksia, IO-poikkeus nousee.
  3. SQLException: Tämä on myös tarkistettu poikkeus, kun tiedosto on kytketty SQL-tietokantaan, ja SQL-tietokannan liitettävyydessä on ongelma, SQLException nousee

Suorituksenaikaiset poikkeukset

Ajonaikaiset poikkeukset ovat se, jonka ohjelmoija olisi voinut välttää. Ne jätetään huomiotta laatimishetkellä.

Joitakin esimerkkejä ovat:

  1. ArrayIndexOutOfBoundsException: Tämä on ajonaikainen poikkeus, kun taulukon koko ylittää elementit.
  2. ArithmeticException: Tämä on myös ajonaikainen poikkeus, kun on olemassa matemaattisia operaatioita, jotka eivät ole sallittuja normaaleissa olosuhteissa, esimerkiksi luvun jakaminen 0: lla antaa poikkeuksen.
  3. NullPointer Exception: Tämä on myös ajonaikainen poikkeus, joka herätetään, kun muuttuja tai objekti on tyhjä, kun yritämme käyttää sitä. Tämä on hyvin yleinen poikkeus.

Virheet:

Ongelma syntyy käyttäjän tai ohjelmoijan hallinnan vuoksi. Jos pino täyttyy, voi tapahtua virhe.

Joitakin esimerkkejä virheestä on lueteltu alla:

  1. Virhe: Tämä virhe on heitettävissä oleva alaluokka, joka osoittaa vakavia ongelmia, joita sovellus ei voi havaita.
  2. Välitön virhe: Tämä virhe ilmenee, kun yritämme instantisoida objektia, mutta se ei tee sitä.
  3. Sisäinen virhe: Tämä virhe ilmenee, kun JVM: stä eli Java Virtual Machineistä on tapahtunut virhe.

Virhepoikkeus

Se on heitettävän luokan esiintymä, ja sitä käytetään virhesivuilla.

Joitakin heitettävän luokan menetelmiä ovat:

  • Public String getMessage () - palauttaa poikkeuksen viestin.
  • Syy () - palauttaa poikkeuksen syyn
  • Public printStackTrace () - palauttaa poikkeuksen pinojäljen.

Esimerkki

Exception_example.jsp

<% @ page errorPage = "guru_error.jsp"%><% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Poikkeusguru JSP1 <%int numero = 10;jos (num == 10){heittää uusi RuntimeException ("Virhetila !!!");}%>

Guru_error.jsp

<% @ page isErrorPage = "true"%><% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%> Guru-poikkeussivu 

Guru-poikkeusta on tapahtunut

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

Koodin selitys:

Exception_example.jsp

Koodirivi 1: Tässä asetetaan virhesivuksi guru_error.jsp, jota käytetään, kun virhe ohjataan uudelleen.

Koodirivi 15: Otamme muuttujan num ja asetamme sen arvoksi 10 ja tarkistamme ehdon, jos numero on 10, jotta heitettäisiin ajonaikainen poikkeus, jonka sanoma on Virhetila.

Guru_error.jsp

Koodirivi 1: Tässä asetamme isErrorPageattribute-arvon true.

Koodirivi 12: Poikkeus on nostettu poikkeuksen_esimerkki.jsp avulla heitto-objektilla, ja tämä poikkeus näytetään täällä, kun IsErrorPage-määritteeksi on merkitty tosi. Poikkeusta (tämä on objekti, jonka avulla JSP voi käyttää poikkeustietoja.) -Objektia yritämme tulostaa virheen pinonjäljen, joka tapahtui poikkeuksen_esimerkki.jsp tiedostossa.

Kun suoritat yllä olevan koodin, saat seuraavan tuloksen:

Tuotos:

Poikkeus on nostettu, joka on heitetty osoitteesta poikkeus_esimerkki.jsp käyttämällä ajonaikaisen poikkeuksen heittoobjektia, ja saamme yllä olevan koodin.

Myös guru_error.jsp kutsutaan, josta Guru-poikkeus on tapahtunut tästä tiedostosta.

Yhteenveto:

Täällä olemme oppineet poikkeuksista tässä opetusohjelmassa ja ottaneet esimerkin ajonaikaisista poikkeuksista opetusohjelmassa.