JSP'de İstisna İşleme

JSP'de İstisna Nedir?

İstisnalar JSP'de kodda geliştiriciden kaynaklanan bir hata veya sistemden kaynaklanan dahili bir hata olduğunda meydana gelir. JSP'deki istisna yönetimi, JSP'dekiyle aynıdır. Java Try Catch bloklarını kullanarak istisnaları yönettiğimiz yer. Farklı JavaJSP'de kodda hata olmadığında da istisnalar vardır.

JSP'deki İstisna Türleri

JSP'deki istisnalar üç türdendir:

  1. Kontrol Edilen İstisna
  2. Çalışma zamanı istisnası
  3. Hata İstisnası

Kontrol Edilen İstisnalar

Genellikle bir kullanıcı hatasıdır veya geliştirici tarafından görülmeyen sorunlara kontrol edilen istisnalar denir. Bazı Kontrol edilen istisna örnekleri şunlardır:

  1. FileNotFoundException: Bu, kontrol edilen bir istisnadır (dosya diskte bulunmadığında dosyayı bulmaya çalışır).
  2. GÇ İstisnası: Bu ayrıca, bir dosyanın okunması veya yazılması sırasında herhangi bir istisna meydana gelirse, IO istisnası ortaya çıkarsa, kontrol edilen istisnadır.
  3. SQLİstisnası: Bu, dosya bağlandığında da kontrol edilen bir istisnadır. SQL veritabanı ve SQL veritabanının bağlantısıyla ilgili bir sorun var, ardından SQLException ortaya çıkıyor

Çalışma Zamanı İstisnaları

Çalışma zamanı istisnaları programcı tarafından önlenebilecek olanlardır. Derleme sırasında göz ardı edilirler. Bazı Çalışma zamanı istisna örnekleri şunlardır:

  1. ArrayIndexOutOfBoundsİstisna: Bu, dizi boyutunun belirtilen değeri aştığı durumlarda ortaya çıkan bir çalışma zamanı istisnasıdır. elemanları.
  2. Aritmetik İstisna: Bu aynı zamanda normal koşullar altında izin verilmeyen herhangi bir matematiksel işlemin olduğu çalışma zamanı istisnasıdır; örneğin bir sayıyı 0'a bölmek bir istisna oluşturacaktır.
  3. NullPointer İstisnası: Bu aynı zamanda bir değişkene veya nesneye erişmeye çalıştığımızda null olduğunda ortaya çıkan bir çalışma zamanı istisnasıdır. Bu çok yaygın bir istisnadır.

Hatalar:

Sorun, kullanıcı veya programcının kontrolünden kaynaklanır. Yığın taşarsa, hata oluşabilir. Hatanın bazı örnekleri aşağıda listelenmiştir:

  1. Hata: Bu hata, bir uygulamanın yakalayamayacağı ciddi sorunları gösteren, atılabilir hatanın bir alt sınıfıdır.
  2. Örnekleme Hatası: Bu hata, bir nesneyi başlatmaya çalıştığımızda ortaya çıkar ve nesne bunu başaramaz.
  3. İç hata: Bu hata, JVM'den bir hata oluştuğunda ortaya çıkar; Java Sanal makine.

Hata İstisnaları

Bu, throwable sınıfının bir örneğidir ve hata sayfalarında kullanılır. Throwable sınıfının bazı yöntemleri şunlardır:

  • Genel Dize getMessage() – istisnanın mesajını döndürür.
  • Herkese açık throwablegetCause() – istisnanın nedenini döndürür
  • Genel printStackTrace()– istisnanın yığın izini döndürür.

JSP'de İstisna Nasıl Ele Alınır?

JSP'de istisnanın nasıl ele alınacağına dair bir örnek:

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>

Kodun açıklaması:

Exception_example.jsp

Kod Satırı 1: Burada hata sayfasını, hata yönlendirileceği zaman kullanılacak guru_error.jsp olarak ayarlıyoruz.

Kod Satırı 15: bir num değişkeni alıyoruz ve onu 10'a ayarlıyoruz ve num 10 ise bir koşulu kontrol ediyoruz, ardından Hata Durumu mesajıyla bir Çalışma Zamanı İstisnası atıyoruz.

Guru_error.jsp

Kod Satırı 1: Burada isErrorPage özelliğini true olarak ayarlıyoruz.

Kod Satırı 12: İstisna, throw nesnesi kullanılarak Exception_example.jsp'de oluşturuldu ve bu istisna burada IsErrorPage özelliği true olarak işaretlendiğinde gösterilecek. İstisna (bu, istisna verilerine JSP tarafından erişilmesini sağlayan bir nesnedir.) nesnesini kullanarak, Exception_example.jsp'de meydana gelen hatanın yığın izlemesini yazdırmaya çalışıyoruz.

Yukarıdaki kodu çalıştırdığınızda aşağıdaki çıktıyı alırsınız:

JSP'de İstisnaları İşle

Çıktı:

Exception_example.jsp'den fırlatılan istisna, çalışma zamanı istisnasının throw nesnesini kullanarak yükseltildi ve yukarıdaki kodu elde ettik. Ayrıca Guru Exception'ın bu dosyadan meydana geldiği guru_error.jsp çağrıldı.

ÖZET

  • JSP'de istisnalar, kodda geliştiriciden kaynaklanan bir hata veya sistemden kaynaklanan dahili bir hata olduğunda ortaya çıkar.
  • JSP'deki istisnalar 3 türden oluşur: Kontrol Edilen İstisnalar, Çalışma Zamanı İstisnaları ve Hata İstisnaları
  • Kontrol edilen istisna normalde bir kullanıcı hatasıdır veya geliştirici tarafından görülmeyen sorunlara kontrol edilen istisnalar adı verilir.
  • Çalışma zamanı istisnaları programcının kaçınabileceği istisnalardır. Derleme sırasında bunlar göz ardı edilir.
  • Hata istisnası, atılabilir sınıfın bir örneğidir ve hata sayfalarında kullanılır.