Debugging JSP: Cara Mendebug JSP di Eclipse?

โšก Ringkasan Cerdas

Debugging di JSP adalah proses tracKesalahan debugging dalam aplikasi JSP. Sumber daya ini menjelaskan tiga teknik debuggingโ€”pernyataan println, dan lain-lain. Java Alat pencatat log dan debuggerโ€”serta panduan langkah demi langkah cara men-debug halaman JSP di Eclipse menggunakan breakpoint dan mode debug.

  • ๐Ÿž Definisi: Debugging tracKesalahan-kesalahan yang sulit direproduksi dalam aplikasi JSP interaktif klien.
  • ๏ธ println: System.out.println() mencetak nilai variabel untuk memastikan baris kode mana yang telah dieksekusi.
  • ๐Ÿ“ Java Penebang kayu: Kerangka kerja pencatatan (logging framework) merekam pesan-pesan yang dikategorikan berdasarkan level, seperti info dan severe, ke dalam file log.
  • ๐Ÿ”ง Alat Debugger: Eclipse menyediakan breakpoint dan tampilan variabel untuk memeriksa status runtime.
  • โ–ถ ๏ธ Eclipse Tangga: Atur breakpoint, mulai ulang server dalam mode debug, lalu jalankan kode langkah demi langkah.

Debugging JSP

Apa itu Debugging di JSP?

Debugging di JSP adalah proses tracmenemukan kesalahan dalam aplikasi. Ini tidak mudah. tracKesalahan dan bug dalam aplikasi. Aplikasi JSP bersifat interaktif dengan klien. Oleh karena itu, kesalahan sulit direproduksi.

Teknik Debugging JSP

Ada 3 teknik berbeda yang dapat digunakan untuk men-debug aplikasi JSP:

  • Menggunakan pernyataan println
  • Menggunakan Java Pencatat
  • Menggunakan alat Debugger

Menggunakan Pernyataan println

  • System.out.println() digunakan untuk trace. apakah bagian tertentu dieksekusi atau tidak.
  • Kita dapat mencetak variabel dalam kode.
  • Selain itu, kita juga dapat mencetak nilai-nilai yang perlu digunakan untuk men-debug aplikasi.

Contoh:

Dalam contoh ini, kita melakukan debug melalui pernyataan println untuk memahami nilai apa yang kita peroleh untuk variabel.

<%@ 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>Debug Guru JSP</title>
</head>
<body>
<% int num1 = 10;
System.out.println("This is debugging Guru JSP");
num1++;
int num2 = num1 / 0;
System.out.println(num2); %>
</body>
</html>

Penjelasan kodenya:

Code Baris 10: Kita mengambil variabel num1 dan menginisialisasinya menjadi 10.

Code Baris 11: Kita mencetak, menggunakan pernyataan println, โ€œIni sedang melakukan debuggingโ€ Guru Gunakan "JSP" untuk men-debug baris kode mana yang telah dieksekusi.

Code Baris 12: Di sini kita menambah nilai variabel num1 sebesar 1.

Code Baris 13: Kita membagi num1 dengan 0 dan memasukkannya ke dalam variabel baru num2.

Code Baris 14: Karena kita ingin mengetahui nilai untuk num2, kita dapat mengambilnya menggunakan pernyataan println untuk mengetahui hingga baris kode mana yang telah dieksekusi.

Ketika Anda menjalankan kode di atas, Anda akan mendapatkan output berikut:

Debugging JSP Menggunakan Pernyataan println

Keluaran:

Di sini, kita mendapatkan pernyataan โ€œIni sedang dalam proses debuggingโ€ Guru JSPโ€ dengan nilai variabel num1, yang telah ditambah, sehingga menjadi 11.

Menggunakan Java Pencatat

  • The Java Kerangka kerja pencatatan (logging framework) digunakan untuk layanan pencatatan (logging services) untuk kelas apa pun yang berjalan di dalamnya. FMV.
  • Ini digunakan untuk mencatat informasi apa pun dari kode.
  • Sistem ini mencatat semua informasi yang diperlukan untuk trace. bug yang telah terjadi.

Contoh:

Dalam contoh ini, kita menggunakan Java pencatat ke trace informasi dalam kode. Pesan dapat ditampilkan menggunakan berbagai fungsi seperti severe(), warning(), info(), config(), dan fine(). Info digunakan untuk menampilkan informasi dalam file log. Severe digunakan untuk menampilkan beberapa informasi serius dalam file log.

<%@taglib prefix="guru" uri="http://java.sun.com/jsp/jstl/core" %>
<%@page import="java.util.logging.Logger" %>
<%@page import="java.util.Date" %>
<%@ 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>Debugging Guru JSP</title>
</head>
<body>
<% Logger logger = Logger.getLogger(this.getClass().getName()); %>
<% Date dt = new Date();
logger.info(dt.toString());
logger.info("This is Guru Logging debugger"); %>
</body>
</html>

Penjelasan kodenya:

Code Baris 2: Kami sedang mengimpor Java logger untuk mencatat informasi.

Code Baris 3: Kami mengimpor kelas Date dari paket util.

Code Baris 13: Kita menginisialisasi kelas logger dengan menggunakan metode getLogger.

Code Baris 14: Kita sedang menginisialisasi kelas Date.

Code Baris 15: Kita menggunakan metode info dari objek kelas logger untuk mencetak tanggal saat ini.

Code Baris 16: Kami menggunakan metode info untuk mencetak 'Ini adalah Guru Debugger logging.

Saat Anda menjalankan kode di atas, Anda akan mendapatkan output berikut:

Debugging JSP Menggunakan Java Pencatat

Keluaran:

Kita akan mendapatkan output di std.log, yang akan disimpan di folder Logging di server. Di sini kita akan mendapatkan informasi yang telah ditulis dalam kode.

Menggunakan Alat Debugging

Kami telah menggunakan Eclipse sejak awal tutorial. Di Eclipse, kami memiliki alat debugging untuk men-debug kesalahan atau bug dalam kode.

Cara Debug JSP di Eclipse

Berikut langkah-langkah untuk men-debug aplikasi JSP Eclipse menggunakan alat debugging:

  1. Tetapkan Breakpoint.
  2. Restart server dalam mode debugging.
  3. Lakukan debugging melalui breakpoint.

Langkah 1) Tetapkan Breakpoint

Kita dapat mengatur breakpoint di dalam kode, di tempat yang kita inginkan. trackode tersebut:

<%@ 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>Debugging Guru JSP</title>
</head>
<body>
<% String name = "This is test Guru JSP";
out.println(name);
%>
</body>
</html>

Di sini kita mengatur breakpoint sebagai 'toggle breakpoint' saat Anda mengklik kanan pada penjelajah proyek. Kita dapat mengatur breakpoint di tempat terjadinya kesalahan atau bug. Setelah diatur, debugger akan berpindah ke breakpoint pertama, lalu ke breakpoint berikutnya, dan seterusnya. Debugger akan menjalankan aplikasi dengan bantuan breakpoint. Setelah mengatur breakpoint, kita perlu memulai ulang server dalam mode debug.

Langkah 2) Mulai ulang Server dalam Mode Debugging

Kita dapat memulai ulang server dalam mode debugging dengan mengklik sisi server dan mengklik Mulai dalam mode Debug.

Debug JSP di Eclipse

Langkah 3) Debug melalui Breakpoints

Kita dapat melakukan debugging aplikasi dengan mengklik aplikasi sebagai Debug As:

Debug JSP di Eclipse

Anda akan menerima peringatan untuk mengganti perspektif; kemudian klik tombol โ€œYaโ€. Setelah mengklik tombol 'Ya', kita akan mendapatkan perspektif berikut:

Debug JSP di Eclipse

Kita akan sampai ke tab Variabel, di mana kita dapat melihat nilai-nilai variabel:

Debug JSP di Eclipse

Tab Breakpoints menampilkan jumlah breakpoint dalam kode:

Debug JSP di Eclipse

Kita dapat melakukan debugging aplikasi melalui breakpoint yang telah diatur.

Pertanyaan Umum Demo Slot

Ya. Asisten AI dapat menganalisis tumpukan. tracYa, temukan pointer null atau kesalahan pembagian, dan sarankan perbaikan dalam kode JSP dan servlet. Ini mempercepat proses debugging, tetapi Anda harus mengkonfirmasi perbaikan tersebut dengan menjalankan halaman.

Tidak. AI menyarankan kemungkinan penyebabnya, tetapi langkahnyaping melalui titik henti di Eclipse tetap memberikan nilai variabel runtime yang tepat yang mengkonfirmasi masalah sebenarnya. Kedua pendekatan ini bekerja paling baik jika digunakan bersama.

Perintah `println` mencetak langsung ke konsol dan sulit dikelola dalam skala besar. Logger mencatat pesan-pesan yang diberi level, seperti `info` atau `severe`, ke dalam file log yang dapat difilter, disimpan, dan dianalisis kemudian.

Kesalahan 500 biasanya berasal dari pengecualian yang tidak tertangkap di JSP, seperti NullPointerException atau pembagian dengan nol. Penyebab pastinya ditunjukkan dalam log server dan stack. trace.

Ringkaslah postingan ini dengan: