Das beste JSP-Debugging-Tutorial im Jahr 2024. In diesem Tutorial können Sie Verwenden Sie System.out.println (),Verwenden Sie JDB Logger,Debugging tools,Verwenden Sie JDB Debugger,Verwenden Sie Kommentare,Der Leiter der Client- und Server-Module,Wichtige Debugging-Techniken, lernen
Um zu testen / debug eine JSP oder Servlet-Programm ist immer so schwierig. JSP und Servlets Verfahren neigen dazu, die Interaktion zwischen einer Vielzahl von Client / Server einzubinden, was wahrscheinlich ist, einen Fehler zu erzeugen, und es ist schwierig, die Fehlerumgebung zu reproduzieren.
Als nächstes werden einige Tipps und Hinweise gegeben werden Sie Ihr Programm debuggen zu helfen.
System.out.println () leicht Flag ist ein Stück Code ausgeführt. Natürlich können wir auch eine Vielzahl von Werten ausdrucken. Darüber hinaus:
Als nächstes wird die Syntax System.out.println () gegeben:
System.out.println("Debugging message");
Dies ist ein einfaches Beispiel für die Verwendung System.out.print () ist:
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head><title>System.out.println</title></head> <body> <c:forEach var="counter" begin="1" end="10" step="1" > <c:out value="${counter-5}"/></br> <% System.out.println( "counter= " + pageContext.findAttribute("counter") ); %> </c:forEach> </body> </html>
Nun, wenn Sie das obige Beispiel laufen, dann wird es die folgenden Ergebnisse erzielt:
-4 -3 -2 -1 0 1 2 3 4 5
Wenn Sie Tomcat-Server verwenden, können Sie mehrere der folgenden in der stdout.log Datei zu finden logs unter:
counter=1 counter=2 counter=3 counter=4 counter=5 counter=6 counter=7 counter=8 counter=9 counter=10
Mit dieser Methode von Variablen und andere Informationen können auf das Systemprotokoll, das Problem zu analysieren und die Ursache für die tief verwurzelte Gründe finden.
J2SE Logging-Framework bietet Protokollierungsdienste für jede Klasse läuft in der JVM. So können wir diesen Rahmen nutzen, um alle Informationen aufzuzeichnen.
Lassen Sie uns den Code oben neu schreiben, verwenden Sie die JDK-Logger-API:
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@page import="java.util.logging.Logger" %> <html> <head><title>Logger.info</title></head> <body> <% Logger logger=Logger.getLogger(this.getClass().getName());%> <c:forEach var="counter" begin="1" end="10" step="1" > <c:set var="myCount" value="${counter-5}" /> <c:out value="${myCount}"/></br> <% String message = "counter=" + pageContext.findAttribute("counter") + " myCount=" + pageContext.findAttribute("myCount"); logger.info( message ); %> </c:forEach> </body> </html>
Es ist ähnlich wie die Ergebnisse früherer, aber es können zusätzliche Informationen an die stdout.log Datei. Hier verwenden wir die Info-Logger-Methode. Im Folgenden eine Momentaufnahme stdout.log Datei geben:
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=1 myCount=-4 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=2 myCount=-3 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=3 myCount=-2 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=4 myCount=-1 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=5 myCount=0 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=6 myCount=1 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=7 myCount=2 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=8 myCount=3 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=9 myCount=4 24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService INFO: counter=10 myCount=5
Nachrichten können mit einer Vielzahl von Priorität gesendet werden, von Sever mit (), Warnung (), info (), config (), fein (), feiner (), feinste () -Methode. feinste () -Methode verwendet, um die besten Informationen zu erfassen und durchtrennen () -Methode verwendet wird, um die gravierendsten Informationen aufzuzeichnen.
Verwenden Sie Log4J Rahmen Protokolle Nachrichten in einer anderen Datei, diese Meldungen basierend auf der Schwere und Bedeutung zu klassifizieren.
NetBeans ist eine Baumstruktur, Open-Source-Java-Entwicklungsumgebung integriert, unterstützen die Entwicklung von Stand-alone-Java-Anwendungen und Netzwerk-Anwendungen, sondern auch die Unterstützung JSP-Debugging.
NetBeans unterstützt die folgenden ein paar grundlegende Debugging-Funktionen:
Detaillierte Informationen können angezeigt NetBeans Handbuch werden.
Sie können den Befehl jdb in JSP und Servlets in für das Debuggen, wie Debug wie eine normale Anwendung.
Normalerweise leiten wir das Debuggen sun.servlet.http.HttpServer die Situation Httpserver Implementierung von JSP / Servlets als Antwort auf HTTP-Anfragen an View-Objekt. Dies ist sehr ähnlich zu Debugging-Applets. Der Unterschied besteht darin, dass Applets tatsächlichen Debugging-Programm ist sun.applet.AppletViewer.
Die meisten der Debugger beim Debuggen Applets können automatisch einige der Details zu ignorieren, weil sie weiß, wie man Applets zu debuggen. Wenn Sie JSP-Objekte auf den Körper übertragen debuggen möchten, müssen Sie zwei Dinge tun:
Set Classpath, es begann sun.servlet.http.Http-Server in Betrieb nehmen. Sie können überall Punkte in der JSP-Datei gesetzt, so lange wie Sie möchten, und verwenden Sie dann den Browser eine Anfrage an den Server sendet sollte das Programm gestoppt an einem Haltepunkt zu sehen können.
Programm Anmerkungen zum Debugger eine hilfreiche Rolle in vielen Aspekten spielen. Kommentare können in vielfältiger Weise in den Debugger verwendet werden.
JSP verwendet Java-Annotationen. Wenn ein Fehler verschwunden ist, lesen Sie bitte sorgfältig die Kommentare hinterlassen haben Sie einfach den Code hatte können in der Regel herausfinden, warum.
Manchmal, wenn die JSP nicht in einer vorgegebenen Weise ausgeführt wird, wenn die Roh-HTTP-Anforderungen und -Antworten Blick sind ebenfalls nützlich. Wenn die Struktur mit HTTP sehr vertraut ist, können Sie direkt auf die Anfrage und Antwort-Header zu beobachten und zu sehen, wie die Module am Ende.
Hier sind wir wieder aufgedeckt zwei Tipps zum Debuggen JSP: