Испробајте Цатцх: Руковање изузецима у ЈСП-у

Преглед садржаја:

Anonim

Шта је ЈСП изузетак?

Изузеци се јављају када у коду постоји грешка или програмера или интерна грешка система.

Руковање изузецима у ЈСП је исто као у јави где изузецима управљамо помоћу три цатцх блокова.

За разлику од Јаве, у ЈСП-у постоје изузеци и када постоји грешка у коду.

Изузеци су три врсте:

  1. Означени изузетак
  2. РунтимеЕкцептион
  3. ЕррорсЕкцептион

Означени изузеци

Обично се ради о корисничкој грешци или проблеми које програмер не види називају се потврђеним изузецима.

Неки од примера су:

  1. ФилеНотФоундЕкцептион: Ово је проверени изузетак (где покушава да пронађе датотеку када датотека није пронађена на диску).
  2. ИО изузетак: Ово је такође означени изузетак ако се неки изузетак догодио током читања или писања датотеке, онда се ИО изузетак подиже.
  3. СКЛЕкцептион: Ово је такође проверени изузетак када је датотека повезана са СКЛ базом података, а постоји проблем са повезивањем СКЛ базе података, а затим се покреће СКЛЕкцептион

Изузеци током извођења

Изузеци током извођења су они које је програмер могао избећи. Они се игноришу у време састављања.

Неки од примера су:

  1. АрраиИндекОутОфБоундсЕкцептион: Ово је изузетак током извођења када величина низа премашује елементе.
  2. АритхметицЕкцептион: Ово је такође изузетак током извођења када постоје било које математичке операције које нису дозвољене у нормалним условима, на пример, подела броја са 0 даће изузетак.
  3. НуллПоинтер изузетак: Ово је такође изузетак током извођења који се покреће када је променљива или објекат нула када покушавамо да им приступимо. Ово је врло чест изузетак.

Грешке:

Проблем настаје услед контроле корисника или програмера. Ако се стек прелије, онда може доћи до грешке.

У наставку су наведени неки примери грешке:

  1. Грешка: Ова грешка је подкласа за бацање која указује на озбиљне проблеме које апликација не може да ухвати.
  2. Инстанцациона грешка: Ова грешка се јавља када покушавамо да направимо инстанцу објекта, а он то не успе.
  3. Интерна грешка: Ова грешка се јавља када дође до грешке из ЈВМ-а, тј. Јава виртуелне машине.

Изузетак грешке

То је инстанца класе која се може бацити и користи се на страницама са грешкама.

Неке методе класе за бацање су:

  • Јавни низ гетМессаге () - враћа поруку о изузетку.
  • Јавна тхроваблегетЦаусе () - враћа узрок изузетка
  • Публиц принтСтацкТраце () - враћа стацктраце изузетка.

Пример

Екцептион_екампле.јсп

<% @ паге еррорПаге = "гуру_еррор.јсп"%><% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Изузетак Гуру ЈСП1 <боди><%инт број = 10;ако (број == 10){баци нови РунтимеЕкцептион ("Услов грешке !!!");}%>

Гуру_еррор.јсп

<% @ паге исЕррорПаге = "труе"%><% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру страница са изузетком <боди><п> Дошло је до гуру изузећа <% екцептион.принтСтацкТраце (респонсе.гетВритер ()); %>

Објашњење кода:

Екцептион_екампле.јсп

Линија кода 1: Овде постављамо страницу са грешком на гуру_еррор.јсп која ће се користити када се грешка преусмери.

Линија кода 15: узимамо променљиву нум и постављамо је на 10 и проверавамо стање ако је нум 10, а затим да избацимо Рунтиме Екцептион са поруком као Еррор Цондитион.

Гуру_еррор.јсп

Линија кода 1: Овде постављамо исЕррорПагеаттрибуте на труе.

Редак кода 12: Изузетак је покренут у изузетку_екампле.јсп помоћу објекта бацања и тај изузетак ће бити приказан овде као атрибут ИсЕррорПаге означен као истинит. Користећи изузетак (ово је објекат који ЈСП-у омогућава приступ подацима изузетака.) Покушавамо да одштампамо стацктраце грешке која се догодила у изузетку_екампле.јсп.

Када извршите горњи код, добићете следећи излаз:

Излаз:

Покренут је изузетак који је избачен из изузетка_екампле.јсп помоћу објекта бацања извођачког изузетка и добијамо горњи код.

Такође се позива гуру_еррор.јсп из којег је дошло до Гуру изузетка из ове датотеке.

Резиме:

Овде смо сазнали о изузецима у овом упутству и узели смо пример изузећа током извођења у водичу.