JSP Debugging: Hur man felsöker JSP i Eclipse?
Vad är felsökning i JSP?
Felsökning i JSP är processen för att spåra felet i applikationen. Det är inte särskilt lätt att spåra buggar och fel i applikationen. JSP-applikationer är klientinteraktiva. Därför är fel svåra att återskapa.
JSP-felsökningstekniker
Det finns tre olika tekniker genom vilka vi kan felsöka en JSP-applikation:
- Använda println-satser
- Använda Java logger
- Använda felsökningsverktyg
Använda println Statements
System.out.println()
används för att spåra om en viss del exekveras eller inte.- Vi kan skriva ut variablerna i koden.
- Vi kan också skriva ut värden som måste användas för att felsöka applikationen.
Exempelvis:
I det här exemplet felsöker vi println-satserna för att förstå vilka värden vi får för variablerna.
<%@ 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>
Förklaring av koden:
Kodrad 10: Vi tar variabel num1 och initierar den till 10.
Kodrad 11: Vi skriver ut med hjälp av println-satser att "Detta felsöker Guru JSP" för att felsöka vilken kodrad som har körts
Kodrad 12: Här ökar vi variabeln num1 med 1.
Kodrad 13: vi dividerar num1 med 0 och lägger till en ny variabel num2.
Kodrad 14: Eftersom vi vill veta värdet för num2 kan vi hämta med hjälp av println-satsen för att veta till vilken rad kod som har exekveras.
När du kör ovanstående kod får du följande utdata:
Produktion:
Här får vi uttalandet "Detta är att felsöka Guru JSP" med värdet på variabeln num1 som har ökats därav 11.
Använda Java logger
- Smakämnen Java loggningsramverk används för loggningstjänster för alla klasser som körs in JVM.
- Detta används för att logga all information från koden.
- Den loggar all nödvändig information för att spåra de buggar som har inträffat.
Exempelvis:
I det här exemplet använder vi javalogger för att spåra informationen i koden. Meddelanden kan visas med olika funktioner som t.ex severe()
, warning()
, info()
, config()
, Fine()
. Info används för att visa informationen i loggfilen. Severe används för att visa allvarlig information i loggfilen.
<%@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>
Förklaring av koden:
Kodrad 2: Vi importerar javaloggern för att logga informationen.
Kodrad 3: Vi importerar Date class för util-paketet
Kodrad 13: Vi initierar loggerklassen genom att använda getLogger-metoden.
Kodrad 14: Vi startar datumklassen.
Kodrad 15: vi använder infometoden för logger class object för att skriva ut det aktuella datumet.
Kodrad 16: Vi använder informationsmetoden för att skriva ut "Detta är Guru Logging debugger".
När du kör ovanstående kod får du följande utdata
Produktion:
Vi kommer att få utdata i std.log, som kommer att lagras i Logging-mappen på servern. Här får vi informationen som har skrivits i koden.
Använda felsökningsverktyg
Vi har använt Eclipse sedan början av handledningen. I förmörkelse, vi har felsökningsverktyg för att felsöka felen eller buggarna i koden.
Hur man felsöker JSP i Eclipse
Här är stegen för att felsöka en JSP-applikation i Eclipse med hjälp av felsökningsverktyg:
- Ställ in brytpunkten
- Starta om servern i felsökningsläge
- Felsök genom brytpunkter
Steg 1) Ställ in brytpunkten
Vi kan ställa in brytpunkten i koden, där vi vill spåra koden:
<%@ 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>
Här ställer vi in brytpunkten som "växla brytpunkt" när du högerklickar på projektutforskaren. Vi kan ställa in brytpunkterna där felet eller buggen inträffar. När de väl är inställda kommer debuggern att flytta till den första brytpunkten och sedan nästa och så vidare. Det kommer att köras genom applikationen med hjälp av brytpunkter. Efter att ha ställt in brytpunkten måste vi starta om servern i felsökningsläge.
Steg 2) Starta om servern i felsökningsläge
Vi kan starta om servern i felsökning genom att klicka på serversidan och klicka på start i felsökningsläge.
Steg 3) Felsök genom brytpunkter
Vi kan felsöka applikationen genom att klicka på applikationen som felsökning som:
Du får en varning om att byta perspektiv och klicka sedan på knappen "Ja". Efter att ha klickat på "ja"-knappen får vi följande perspektiv:
Vi kommer att få upp fliken variabler, där vi kan se värden på variablerna:
Brytpunktersfliken visar antalet brytpunkter i koden:
Vi kan felsöka applikationen genom de brytpunkter som har ställts in.
Sammanfattning
- Felsökning i JSP är processen för att spåra felet i applikationen.
- JSP-felsökningstekniker: Använda
println
uttalanden, Använda Java Logger och använda felsökningsverktyg System.out.println()
används för att spåra om en viss del exekveras eller inte.- Smakämnen Java loggningsramverk används för loggningstjänster för alla klasser som körs i JVM.
- I eclipse har vi felsökningsverktyg för att felsöka felen eller buggarna i koden.