Grundlegende Fragen zu Java-Hochfrequenzinterviews——(4)
1. Sprechen Sie über den Lebenszyklus von Servlet? Bearbeitung der Anfrage und Beendigung des Dienstes. Diese Lebensdauer wird durch die Methoden init(), service() und destroy der Schnittstelle javax.servlet.Servlet ausgedrückt.
Nachdem das Servlet vom Server instanziiert wurde, führt der Container seine Init-Methode aus, und wenn die Anforderung eintrifft, führt er seine Dienstmethode aus. Die Dienstmethode sendet automatisch die der Anforderung entsprechenden doXXX-Methoden (doGet, doPost). usw. und wird aufgerufen, wenn der Server beschließt, die Instanz zu zerstören.
Der Webcontainer lädt das Servlet und der Lebenszyklus beginnt. Initialisieren Sie das Servlet, indem Sie die init()-Methode des Servlets aufrufen. Dies wird durch Aufrufen der service()-Methode erreicht, und je nach Anforderung werden unterschiedliche do***()-Methoden aufgerufen. Um den Dienst zu beenden, ruft der Webcontainer die destroy()-Methode des Servlets auf.
2. Was ist der Unterschied zwischen Forward() und Redirect() in der Servlet-API? 1.
Weiterleiten bedeutet, dass der Server direkt auf die URL der Zieladresse zugreift, den Antwortinhalt dieser URL liest und den Inhalt dann an den Browser sendet tut dies überhaupt nicht. Es weiß, woher der vom Server gesendete Inhalt kommt, daher ist seine Adressleiste immer noch die ursprüngliche Adresse.
Umleiten bedeutet, dass der Server einen Statuscode sendet, der auf Logik basiert, um den Browser anzuweisen, diese Adresse erneut anzufordern. Daher bedeutet Umleiten, dass der Client zwei Anfragen an den Server sendet und auch zwei Anfragen akzeptiert . Antwort.
2. Aus Sicht der Datenfreigabe
Weiterleitung: Die weitergeleitete Seite und die weitergeleitete Seite können die Daten in der Anfrage teilen.
Umleitung: Daten können nicht geteilt werden. Die Weiterleitung kann nicht nur auf andere Ressourcen der aktuellen Anwendung umgeleitet werden , aber auch Weiterleitung zu Ressourcen in anderen Anwendungen auf derselben Site oder sogar Weiterleitung zu Ressourcen auf anderen Sites mithilfe absoluter URLs
Die Weiterleitungsmethode kann nur Anforderungen zwischen Ressourcen innerhalb derselben Webanwendung weiterleiten. Die Weiterleitung erfolgt an den Server. Ein interner Vorgang
Umleitung ist, wenn der Server den Client benachrichtigt und ihm erlaubt, die Anfrage erneut zu initiierenMan kann also sagen, dass die Umleitung eine indirekte Anfrage ist, aber man kann nicht sagen, „ob eine Anfrage weitergeleitet oder umgeleitet wird“ 3. In Bezug auf den Anwendungsbereich: Weiterleiten: Wird im Allgemeinen verwendet, wenn sich Benutzer anmelden, und leitet entsprechend der Rolle zum entsprechenden Modul weiter. Umleiten: Wird im Allgemeinen verwendet, um zur Hauptseite zurückzukehren, wenn sich Benutzer abmelden und zu anderen Websites usw. springen . 4. Was ist der Unterschied zwischen request.getAttribute() und redirect? request.getParameter() Die über Methoden wie post und get übergebenen Daten werden durch die Implementierung des Containers abgerufen. request.setAttribute() und getAttribute() fließen nur innerhalb des Webcontainers und befinden sich nur in der Anforderungsverarbeitungsphase. 2. getAttribute gibt ein Objekt zurück, getParameter gibt einen String zurück 3. GetAttribute() wird immer zusammen mit setAttribute() verwendet Was übergeben wird, sind Objekttypdaten. Und es muss im selben Anforderungsobjekt verwendet werden, um gültig zu sein. , und getParameter() soll die vom Get oder Post des Formulars übermittelten Parameter empfangen. %@include file="xxx.jsp"%> ist eine Kompilierungsanweisung in jsp. Die Einbindung der Datei erfolgt während der Konvertierungsperiode von jsp in servlet, und3. Bei Verwendung der statischen Einbindung sind die Anforderungsobjekte der enthaltenden Seite und der eingebundenen Seite dasselbe Objekt, da die statische Einbindung nur den Inhalt der eingebundenen Seite auf die eingebundene Seite kopiert Seiten und eingeschlossene Seiten sind nicht dasselbe Objekt. Für eine Seite ist der Parameterbereich, der vom Anforderungsobjekt der enthaltenen Seite abgerufen werden kann, relativ groß Sie können die weitergegebenen Parameter auch von der enthaltenen Seite abrufen. 5. MVC Welche Technologien werden zur Implementierung der einzelnen Teile verwendet?
MVC ist die Abkürzung für Model-View-Controller. Das Modell stellt die Geschäftslogik der Anwendung dar (implementiert durch JavaBeans- und EJB-Komponenten), die Ansicht ist die Präsentationsoberfläche der Anwendung (generiert durch JSP-Seiten) und der Controller stellt die Prozesssteuerung der Anwendung bereit (normalerweise ein Servlet). Teilen Sie Anwendungslogik, Verarbeitungs- und Anzeigelogik in verschiedene Komponentenimplementierungen auf. Mit diesen Komponenten kann interagiert und sie wiederverwendet werden. 6. Was sind die integrierten Objekte in JSP?JSP verfügt über die folgenden 9 integrierten Objekte:
2. Die Antwort-Webseite gibt die Antwort vom Client zurück
3 Die Attribute der pageContext-Webseite werden hier verwaltet
4 Der Sitzungszeitraum, der sich auf die Anfrage bezieht
6. out wird als Antwortausgabe verwendet 7. Seite JSP-Webseite selbst 9. Ausnahmen für Fehler-Webseiten 7. Der Unterschied zwischen Get- und Post-Methoden in HTTP 1 Get ist eine Anforderung an den Server für Daten, und Post ist eine Anforderung zum Senden von Daten an den Server. 2 Get dient zum Abrufen von Informationen und nicht zum Ändern von Informationen, ähnlich wie bei der Datenbankabfragefunktion nicht geändert werden
3. Die Parameter der Get-Anfrage werden nach der URL übergeben und die angeforderten Daten werden an die URL angehängt und die Daten werden mit ? verknüpft %XX ist das Symbol und wird durch 16 dargestellt. Wenn es sich bei den Daten um englische Buchstaben/Zahlen handelt, konvertieren Sie sie in + , verschlüsseln Sie die Zeichenfolge direkt mit BASE64. 4. Da GET Daten über eine URL übermittelt, hängt die Datenmenge, die von GET übermittelt werden kann, direkt mit der Länge der URL zusammen Länge der URL. 5. Die von GET angeforderten Daten werden vom Browser zwischengespeichert und der Benutzername und das Passwort werden im Klartext auf der URL angezeigt. Andere können die historischen Browsing-Datensätze überprüfen und die Daten sind nicht sicher. Verwenden Sie auf der Serverseite Request.QueryString, um die von der Get-Methode übermittelten Daten abzurufen. Die Post-Anfrage wird als eigentlicher Inhalt der HTTP-Nachricht an den Webserver gesendet. Die Daten werden zur Übermittlung in den HTML-Header eingefügt. Post ist sicherer als Get. Wenn die Daten auf Chinesisch oder nicht vertraulich sind, verwenden Sie get, da bei Verwendung von get die Parameter in der Adresse angezeigt werden. Verwenden Sie für vertrauliche Daten und Daten, die keine chinesischen Zeichen sind. 6. POST stellt eine Anfrage dar, die Ressourcen auf dem Server ändern kann. Auf der Serverseite können in der Post-Methode übermittelte Daten nur mit Request.Form abgerufen werden. 8. Was ist ein Cookie? Was ist der Unterschied zwischen Sitzung und Cookie?
Cookie ist eine Sitzungstechnologie, ein Objekt, das Benutzerinformationen im Browser speichert
(Verwandte Empfehlungen:
Erste Schritte mit Java)
Unterschied:
1. Cookie-Daten werden im Browser des Kunden gespeichert Daten auf dem Server ablegen2. Andere können die lokal gespeicherten Cookies analysieren und sie täuschen. Wenn die Sicherheit im Vordergrund steht, sollten Sie die Sitzung auf dem Server speichern für einen bestimmten Zeitraum. Wenn der Zugriff zunimmt, wird die Leistung Ihres Servers stärker beansprucht. Wenn die Serverleistung hauptsächlich verringert werden soll, sollten Sie COOKIE
4 verwenden. Das Limit eines einzelnen Cookies auf dem Client beträgt 3K, was bedeutet, dass eine Website dies nicht tun kann Speichern Sie 3K COOKIE auf dem Client.
Fazit:
Speichern Sie wichtige Informationen wie Anmeldeinformationen als SITZUNG. Wenn andere Informationen gespeichert werden müssen, können diese in COOKIE abgelegt werden.
9. Was sind die Unterschiede, Gemeinsamkeiten und Anwendungsbereiche von JSP und Servlet?
JSP ist eine Erweiterung der Servlet-Technologie, bei der es sich im Wesentlichen um eine einfache Art von Servlet handelt. Nachdem JSP kompiliert wurde, ähnelt es einem „Servlet“.
Der Hauptunterschied zwischen Servlet und JSP besteht darin, dass sich die Anwendungslogik von Servlet in der Java-Datei befindet und in der Präsentationsschicht vollständig vom HTML getrennt ist. Im Fall von JSP können Java und HTML in einer Datei mit der Erweiterung .jsp kombiniert werden.
JSP konzentriert sich auf Ansichten und Servlets werden hauptsächlich für die Steuerlogik verwendet. Im Struts-Framework befindet sich JSP in der Ansichtsebene des MVC-Entwurfsmusters und Servlet in der Kontrollebene
10. Wie erstellt der Tomcat-Container eine Servlet-Klasseninstanz? Welche Prinzipien werden angewendet?
Wenn der Container startet, liest er die web.xml-Dateien in allen Webanwendungen im Webapps-Verzeichnis, analysiert dann die XML-Dateien und liest die Servlet-Registrierungsinformationen. Laden Sie dann die in jeder Anwendung registrierten Servlet-Klassen und instanziieren Sie sie durch Reflektion. (Manchmal wird es auch bei der ersten Anfrage instanziiert)
Fügen Sie bei der Registrierung des Servlets
Das obige ist der detaillierte Inhalt vonGrundlegende Fragen zu Java-Hochfrequenzinterviews——(4). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Leitfaden zur perfekten Zahl in Java. Hier besprechen wir die Definition, Wie prüft man die perfekte Zahl in Java?, Beispiele mit Code-Implementierung.

Leitfaden zum Zufallszahlengenerator in Java. Hier besprechen wir Funktionen in Java anhand von Beispielen und zwei verschiedene Generatoren anhand ihrer Beispiele.

Leitfaden für Weka in Java. Hier besprechen wir die Einführung, die Verwendung von Weka Java, die Art der Plattform und die Vorteile anhand von Beispielen.

Leitfaden zur Smith-Zahl in Java. Hier besprechen wir die Definition: Wie überprüft man die Smith-Nummer in Java? Beispiel mit Code-Implementierung.

In diesem Artikel haben wir die am häufigsten gestellten Fragen zu Java Spring-Interviews mit ihren detaillierten Antworten zusammengestellt. Damit Sie das Interview knacken können.

Java 8 führt die Stream -API ein und bietet eine leistungsstarke und ausdrucksstarke Möglichkeit, Datensammlungen zu verarbeiten. Eine häufige Frage bei der Verwendung von Stream lautet jedoch: Wie kann man von einem Foreach -Betrieb brechen oder zurückkehren? Herkömmliche Schleifen ermöglichen eine frühzeitige Unterbrechung oder Rückkehr, aber die Stream's foreach -Methode unterstützt diese Methode nicht direkt. In diesem Artikel werden die Gründe erläutert und alternative Methoden zur Implementierung vorzeitiger Beendigung in Strahlverarbeitungssystemen erforscht. Weitere Lektüre: Java Stream API -Verbesserungen Stream foreach verstehen Die Foreach -Methode ist ein Terminalbetrieb, der einen Vorgang für jedes Element im Stream ausführt. Seine Designabsicht ist

Anleitung zum TimeStamp to Date in Java. Hier diskutieren wir auch die Einführung und wie man Zeitstempel in Java in ein Datum konvertiert, zusammen mit Beispielen.

Kapseln sind dreidimensionale geometrische Figuren, die aus einem Zylinder und einer Hemisphäre an beiden Enden bestehen. Das Volumen der Kapsel kann berechnet werden, indem das Volumen des Zylinders und das Volumen der Hemisphäre an beiden Enden hinzugefügt werden. In diesem Tutorial wird erörtert, wie das Volumen einer bestimmten Kapsel in Java mit verschiedenen Methoden berechnet wird. Kapselvolumenformel Die Formel für das Kapselvolumen lautet wie folgt: Kapselvolumen = zylindrisches Volumenvolumen Zwei Hemisphäre Volumen In, R: Der Radius der Hemisphäre. H: Die Höhe des Zylinders (ohne die Hemisphäre). Beispiel 1 eingeben Radius = 5 Einheiten Höhe = 10 Einheiten Ausgabe Volumen = 1570,8 Kubikeinheiten erklären Berechnen Sie das Volumen mithilfe der Formel: Volumen = π × R2 × H (4
