In dem ersten Artikel werden objektorientierte Programmierung und seine Funktionen, gemeinsame Fragen zu Java und seinen Funktionen, Java-Sammlungskursen, Müllsammlern, in diesem Kapitel hauptsächlich Ausnahmebehandlung, Java-Applets, Swing, JDBC, Remote-Methodenaufrufe (RMI), Servlets und JSP erläutert.
Ausnahmebehandlung
Java Applet (Applet)
Swing
JDBC
Remote -Methodenaufruf (RMI)
Servlet
JSP
Ausnahmebehandlung
43.Was sind die beiden Ausnahmetypen in Java? Was ist der Unterschied zwischen ihnen?
Es gibt zwei Arten von Ausnahmen in Java: Überprüfte Ausnahme und ungeprüfte Ausnahme. Eine Ausnahme, die nicht inspiziert wird, muss nicht auf der Methode oder dem Konstruktor deklariert werden. Auch wenn die Ausführung der Methode oder des Konstruktors eine solche Ausnahme ausgelöst hat und die nicht geprüfte Ausnahme außerhalb der Methode oder des Konstruktors propagiert werden kann. Im Gegenteil, die geprüfte Ausnahme muss auf der Methode oder dem Konstruktor unter Verwendung der Throws -Anweisung deklariert werden. Hier sind einige Tipps zum Umgang mit Java -Ausnahmen.
44. Was ist der Unterschied zwischen Ausnahme und Irrtum in Java?
Ausnahme und Fehler sind beide Unterklassen von Throwable. Ausnahme wird für Ausnahmen verwendet, die vom Benutzerprogramm gefangen werden können. Fehler definiert eine Ausnahme, von der nicht erwartet wird, dass sie vom Benutzerprogramm gefangen wird.
45. Was ist der Unterschied zwischen Wurf und Würfen?
Das Wurf -Schlüsselwort wird verwendet, um explizit Ausnahmen in das Programm zu werfen. Im Gegenteil, die Aussage von Throws wird verwendet, um Ausnahmen anzuzeigen, die die Methode nicht verarbeiten kann. Jede Methode muss angeben, welche Ausnahmen nicht behandelt werden können, sodass der Anrufer der Methode sicherstellen kann, dass mögliche Ausnahmen behandelt werden und mehrere Ausnahmen durch Kommas getrennt werden.
45. Was ist die Bedeutung von endgültigen Codeblöcken bei der Behandlung von Ausnahmen? (Anmerkung des Übersetzers: Die Titelnummer des Autors ist falsch)
Ob eine Ausnahme ausgelöst wird oder nicht, schließlich wird der Codeblock immer ausgeführt. Selbst wenn es keine Anweisung gibt und eine Ausnahme ausgelöst wird, wird der endgültige Codeblock dennoch ausgeführt. Schließlich möchte ich sagen, dass schließlich Codeblöcke hauptsächlich zur freien Ressourcen verwendet werden, wie z. B. E/A -Puffer, Datenbankverbindungen.
46. Welche Änderungen werden nach Abschluss der Ausnahmeverarbeitung am Ausnahmeobjekt stattfinden?
Das Ausnahmeobjekt wird während des nächsten Müllsammlungsprozesses recycelt.
47. Was ist der Unterschied zwischen dem endgültigen Code -Block und der Finalize () -Methode?
Unabhängig davon, ob eine Ausnahme ausgelöst wird oder nicht, wird der endgültige Code -Block ausgeführt, der hauptsächlich verwendet wird, um die Ressourcen zu befreien, die von der Anwendung besetzt sind. Die Methode Finalize () ist eine geschützte Methode der Objektklasse. Es wird von der virtuellen Java -Maschine aufgerufen, bevor das Objekt Müll gesammelt wird.
Java Applet (Applet)
48.Was ist Applet?
Ein Java -Applet ist ein Programm, das in einer HTML -Seite aufgenommen werden kann und von einem Clientbrowser mit aktiviertem Java ausgeführt werden kann. Applet wird hauptsächlich zum Erstellen von dynamischen interaktiven Webanwendungen verwendet.
49. Erklären Sie den Lebenszyklus des Applets
Ein Applet kann den folgenden Zustand erleben:
50.Was passiert, wenn ein Applet geladen wird?
Erstellen Sie zunächst eine Instanz der Applet Control -Klasse, initialisieren Sie dann das Applet und beginnen Sie schließlich.
51. Was ist der Unterschied zwischen Applet und gewöhnlichen Java -Anwendungen?
Applet ist ein Java-fähiger Browser, und Java-Anwendungen sind unabhängige Java-Programme, die außerhalb des Browsers ausgeführt werden können. Sie alle müssen jedoch Java -virtuelle Maschinen haben.
Darüber hinaus benötigen Java -Anwendungen eine Hauptfunktion mit einer bestimmten Methodensignatur, um die Ausführung zu starten. Java -Applets benötigen solche Funktionen nicht, um mit der Ausführung zu beginnen.
Schließlich verwenden Java -Applets im Allgemeinen sehr strenge Sicherheitsrichtlinien, während Java -Anwendungen im Allgemeinen relativ lose Sicherheitsrichtlinien verwenden.
52.Was sind die Einschränkungen des Java -Applets?
Hauptsächlich aus Sicherheitsgründen werden Applets folgende Einschränkungen auferlegt:
53.Was ist ein nicht vertrauenswürdiges Applet?
Nicht vertrauenswürdige Applets sind Java -Applets, die nicht auf lokale Systemdateien zugreifen oder ausführen können. Standardmäßig sind alle heruntergeladenen Applets nicht vertrauen.
54. Was ist der Unterschied zwischen einem im Netzwerk geladenen Applet und einem Applet, das von einem lokalen Dateisystem geladen wurde?
Wenn ein Applet aus dem Netzwerk geladen wird, wird das Applet vom Applet Class Loader geladen, der vom Applet Security Manager begrenzt wird.
Wenn das Applet von der lokalen Festplatte des Clients geladen wird, wird das Applet vom Dateisystemlader geladen.
Applets, die aus dem Dateisystem geladen wurden, ermöglichen das Lesen, Schreiben, Laden von Klassenbibliotheken auf der Clientseite und das Ausführen anderer Programme, aber sie können die Bytecode -Überprüfung nicht übergeben.
55.Was ist ein Applet -Class -Loader? Welche Art von Arbeit macht es?
Wenn ein Applet aus dem Netzwerk geladen wird, wird er vom Applet -Class -Loader geladen. Der Klassenloader hat eine eigene Java -Namespace -Hierarchie. Der Klassenloader stellt sicher, dass Klassen aus dem Dateisystem einen eindeutigen Namespace haben und Klassen aus Netzwerkressourcen einen eindeutigen Namespace haben.
Wenn der Browser das Applet über das Netzwerk lädt, wird die Applet -Klasse in den privaten Namespace platziert, der der Quelle des Applets zugeordnet ist. Anschließend werden die vom Klassenlader geladenen Klassen vom Validator überprüft. Der Validator prüft, ob das Klassendateiformat den Java -Sprachspezifikationen entspricht, um sicherzustellen, dass kein Stapelüberlauf oder Unterströmung vorliegt. Die an den Bytecode -Befehl übergebenen Parameter sind korrekt.
56.Was ist Applet Security Manager? Welche Art von Arbeit macht es?
Der Applet Security Manager ist ein Mechanismus, um Applets Einschränkungen aufzuerlegen. Der Browser kann nur einen Sicherheitsmanager haben. Der Sicherheitsmanager wird beim Start erstellt und kann anschließend nicht ersetzt oder erweitert werden.
Swing
57. Was ist der Unterschied zwischen einem Popup-Auswahlmenü (Auswahl) und einer Liste (Liste)
Die Auswahl wird in kompaktem Formular dargestellt und erfordert einen Abzug, um alle Optionen zu sehen. Es kann nur eine Option ausgewählt werden. In der Liste können mehrere Elemente gleichzeitig sichtbar sein und unterstützt die Auswahl eines oder mehrerer Elemente.
58.Was ist ein Layout -Manager?
Layout Manager wird verwendet, um Komponenten in Containern zu organisieren.
59. Was ist der Unterschied zwischen einer Scrollbar und einem Bildlauffeld (JScrollPane)?
Die Scrollbar ist eine Komponente, kein Behälter. Und Scrollpane ist ein Behälter. Scrollpane behandelt die Scrolling -Ereignisse für sich.
60. Welche Swing-Methoden sind fadensicher?
Es gibt nur 3 thread-sichere Methoden: Repaint (), revalidate () und ungültig ().
61. Nennen Sie drei Komponenten, die neu gezogen werden.
RETRAWING von Leinwand, Frame, Panel und Applet.
62. Was ist ein Ausschnitt?
Erzählen Sie den Zeichnungsvorgang, der auf einen bestimmten Bereich oder eine bestimmte Form beschränkt ist.
63. Was ist der Unterschied zwischen Menuitem und CheckboxMenuitem?
Die CheckboxMenuitem -Klasse erbt aus der Menuitem -Klasse und unterstützt Menüoptionen, die ausgewählt oder nicht ausgewählt werden können.
64. Wie sind die Elemente im Randlayout (BorderLayout) angelegt?
Die Elemente im Grenzwert sind nach Osten, West, Süd, Norden und Mitte des Containers arrangiert.
65. Wie sind die Elemente im Grid -Paket -Layout (Gridbaglayout) angelegt?
Die Elemente im Gridbaglayout sind gemäß dem Raster ausgelegt. Elemente verschiedener Größen können mehr als 1 Zeile oder Spalte des Netzes belegen. Daher kann die Anzahl der Zeilen und Spalten unterschiedliche Größen haben.
66. Was ist der Unterschied zwischen Fenster und Rahmen?
Die Rahmenklasse erbt die Fensterklasse, in der ein Hauptanwendungsfenster mit einer Menüleiste definiert wird.
67. Wie ist die Beziehung zwischen dem Ausschneiden und Neulackieren?
Wenn das Fenster durch das AWT -Wiederholungsgewinde neu gezogen wird, setzt es den Erntebereich auf den Bereich des Fensters, der neu gezogen werden muss.
68. Wie ist die Beziehung zwischen der Event -Hörer -Schnittstelle und dem Ereignisadapter?
Die Event -Listener -Schnittstelle definiert die Methoden, die der Ereignisprozessor für ein bestimmtes Ereignis implementieren muss. Der Ereignisadapter bietet eine Standardimplementierung für die Event -Listener -Schnittstelle.
69.Wow verwaltet die GUI -Komponente ihre eigenen Ereignisse?
Eine GUI -Komponente kann ihre eigenen Ereignisse erledigen, solange sie die entsprechende Event -Listener -Schnittstelle implementiert und sich selbst als Ereignishörer betrachtet.
70.Was sind die Vorteile des Layout -Managers von Java gegenüber herkömmlichen Fenstersystemen?
Java verwendet den Layout -Manager, um Komponenten auf alle Fensterplattformen konsistent zu platzieren. Da Layout -Manager nicht an die absolute Größe und Position von Komponenten gebunden sind, können sie sich an die Unterschiede zwischen bestimmten Plattformen über Fenstersysteme hinweg anpassen.
71. Welches Designmuster verwendet die Schwungkomponente von Java?
Die Swing-Komponente in Java verwendet das Entwurfsmuster des MVC (View-Model-Controller).
JDBC
72.Was ist JDBC?
JDBC ist eine Abstraktionsschicht, mit der Benutzer zwischen verschiedenen Datenbanken auswählen können. Mit JDBC können Entwickler Datenbankanwendungen in Java schreiben, ohne sich um die Details der zugrunde liegenden Datenbank zu kümmern.
73. Erklären Sie die Rolle des Treibers (Treiber) in JDBC.
Der JDBC -Treiber bietet die Implementierung der JDBC -API -Schnittstellenklasse durch einen bestimmten Hersteller. Der Treiber muss die folgenden Klassen des Java. -SQL -Pakets angeben: Verbindung, Anweisung, PreparedStatement, Callablestatement, Ergebnis und Treiber.
74. Was ist die Funktion der Klasse der Klasse.Forname ()?
Diese Methode wird verwendet, um Treiber zu laden, die Verbindungen zur Datenbank herstellen.
75.Was sind die Vorteile der vorbereiteten Erklärung gegenüber der Erklärung?
Vorbereitete Einrichtungen sind vorkompiliert, sodass die Leistung besser wird. Gleichzeitig kann vorbereitete Einrichtungen für verschiedene Abfrageparameterwerte wiederverwendet werden.
76. Wann kann Callablestatement verwendet werden? Mit welcher Methode wird eine Callablestatement verwendet?
Callablestatement wird verwendet, um gespeicherte Prozeduren auszuführen. Speichernde Verfahren werden von der Datenbank gespeichert und bereitgestellt. Die gespeicherte Prozedur kann Eingabeparameter akzeptieren oder Ergebnisse zurückgeben. Die Verwendung gespeicherter Verfahren wird sehr gefördert, da sie Sicherheit und Modularität bietet. Die Methode zur Erstellung eines Callablestatements lautet:
CallAnlestament.prepareCall ();
77.Was bedeutet Datenbankverbindungspool?
Die Interaktion mit der Datenbank wie dem Öffnen und Schließen der Datenbankverbindung kann zeitaufwändig sein, insbesondere wenn die Anzahl der Kunden zunimmt, verbraucht sie viele Ressourcen und ist sehr kostspielig. Viele Datenbankverbindungen können in einem Pool festgelegt und verwaltet werden, wenn der Anwendungsserver gestartet wird. Die Verbindungsanforderung wird durch die Verbindung im Pool bereitgestellt. Nachdem die Verbindung verwendet wurde, geben Sie die Verbindung in den Pool zurück, um zukünftige Anfragen zu erfüllen.
Remote -Methodenaufruf (RMI)
78.Was ist RMI?
Java Remote Method Call (Java RMI) ist ein objektorientiertes äquivalentes Formular, das von der Java-API für Remote Procedure Calls (RPC) bereitgestellt wird. Es unterstützt die direkte Übertragung serialisierter Java -Objekte und verteilter Müllsammlung. Ein Remote -Methode -Aufruf kann als Schritt angesehen werden, um eine Methode für ein Remote -laufendes Objekt zu aktivieren. RMI ist für den Anrufer positionell transparent, da der Anrufer der Ansicht ist, dass die Methode auf einem lokal ausgeführten Objekt ausgeführt wird. Schauen Sie sich einige Vorsichtsmaßnahmen für RMI an.
79.Was sind die Grundprinzipien der RMI -Architektur?
Die RMI -Architektur basiert auf einem sehr wichtigen Prinzip der Trennung der Verhaltensdefinition und der Verhaltensrealisierung. Mit RMI können der Code, der das Verhalten definiert, von dem Code getrennt werden, der das Verhalten implementiert und auf verschiedenen JVMs ausgeführt wird.
80.Was sind die Schichten der RMI -Architektur?
Die RMI -Architektur ist in die folgenden Schichten unterteilt:
Stub und Skelettschicht: Diese Schicht ist für Programmierer transparent. Es ist hauptsächlich verantwortlich für die Abnahme von Methodenanfragen, die vom Kunden ausgestellt wurden und die Anfrage an den Remote -RMI -Dienst weiterleiten.
Remote-Referenzschicht: Die zweite Ebene der RMI-Architektur wird verwendet, um Client-Referenzen auf serverseitige Remote-Objekte zu beheben. Diese Ebene analysiert und verwaltet Client-Verweise auf serverseitige Remote-Objekte. Die Verbindung ist Punkt zu Punkt.
Transportschicht: Diese Schicht ist für die Verbindung von zwei am Dienst beteiligen JVMs verantwortlich. Diese Ebene ist auf der TCP/IP -Verbindung zwischen Maschinen im Netzwerk basiert. Es bietet grundlegende Konnektivitätsdienste sowie einige Firewall -Penetration -Richtlinien.
81. Welche Rolle spielt die Remote -Schnittstelle (Remote -Schnittstelle) in RMI?
Remote-Schnittstellen werden verwendet, um zu identifizieren, welche Methoden Schnittstellen sind, die von nicht-lokalen virtuellen Maschinen bezeichnet werden können. Remote -Objekte müssen Remote -Schnittstellen direkt oder indirekt implementieren. Eine Klasse, die eine Remote -Schnittstelle implementiert, sollte die implementierte Remote -Schnittstelle deklarieren, einen Konstruktor für jedes Remote -Objekt definieren und die Implementierung für alle Remote -Schnittstellenmethoden bereitstellen.
82.Wele Rolle spielt die Java.rmi.naming -Klasse?
Die Java.rmi.naming -Klasse wird verwendet, um Verweise auf Remote -Objekte in der Remote -Objektregistrierung zu speichern und zu erhalten. Jede Methode der Benennungsklasse empfängt ein URL-formatiertes String-Objekt als Parameter.
83. Was bedeutet RMI -Bindung?
Die Bindung ist ein Prozess, um Remote -Objekte zu verknüpfen oder Namen nach der Registrierung zu registrieren, um Remote -Objekte abzufragen und zu finden. Remote -Objekte können Namen unter Verwendung der Methode Bind () oder Rebind () der Benennungsklasse zugeordnet werden.
84. Was ist der Unterschied zwischen Bind () und Rebind () Methoden der Namensklasse?
Die Methode Bind () ist für die Bindung des angegebenen Namens an das Remote -Objekt verantwortlich, und die Rebind () -Methode ist für die Wiederherstellung des angegebenen Namens in ein neues Remote -Objekt verantwortlich. Wenn dieser Name gebunden wurde, wird die vorherige Bindung ersetzt.
85. Was sind die Schritte, damit das RMI -Programm richtig ausgeführt werden kann?
Damit das RMI -Programm korrekt ausgeführt werden kann, müssen die folgenden Schritte enthalten sein:
86. Welche Rolle spielt RMIs Stub?
Der Stub eines entfernten Objekts spielt die Rolle eines Repräsentanten oder Stellvertreters eines Remote -Objekts. Der Anrufer ruft eine Methode auf dem lokalen Stub auf, der für die Ausführung der Methode im Remote -Objekt verantwortlich ist. Wenn die Stub -Methode aufgerufen wird, werden die folgenden Schritte durchgeführt:
87. Was ist Distributed Müllsammlung (DGC)? Wie funktioniert es?
DGC wird als verteilte Müllsammlung bezeichnet. RMI verwendet DGC für die automatische Müllsammlung. Da RMI Verweise auf Remote -Objekte über virtuelle Maschinen hinweg enthält, ist die Müllsammlung schwierig. DGC verwendet Referenzzählalgorithmen, um Remote -Objekten eine automatische Speicherverwaltung bereitzustellen.
88.Was ist der Zweck der Verwendung von RMI Security Manager (RMISCURityManager) in RMI?
RMiseCurityManager verwendet heruntergeladenen Code, um einen Sicherheitsmanager bereitzustellen, der von RMI -Anwendungen verwendet werden kann. Ohne einen Sicherheitsmanager lädt der Klassenloader von RMI keine Klassen aus der Ferne herunter.
89. Erklären Sie Marshalling und DeMarshalling.
Wenn eine Anwendung Speicherobjekte über das Netzwerk an einen anderen Host weitergeben oder an den Speicher anhält, muss die Darstellung des Objekts im Speicher in ein geeignetes Format umwandeln. Dieser Prozess wird als Marshalling bezeichnet, sonst ist er DeMarshalling.
90. Erklären Sie Serialisierung und Deserialisierung.
Java liefert einen Mechanismus, der als Objektserialisierung bezeichnet wird. Es stellt ein Objekt als eine Reihe von Bytes dar, einschließlich der Daten des Objekts, der Typinformationen des Objekts, der Daten im Objekt usw. Daher kann die Serialisierung als eine Möglichkeit angesehen werden, das Objekt zu verflachen, um es zu speichern oder aus dem Festplatten zu lesen und wieder aufzubauen. Die Deserialisierung ist der entgegengesetzte Schritt bei der Umwandlung eines Objekts aus einem flachen Zustand in ein lebendes Objekt.
Servlet
91.Was ist ein Servlet?
Servlet ist eine Java -Klasse, mit der Client -Anfragen verarbeitet und dynamische Webinhalte generiert werden. Servlets werden hauptsächlich verwendet, um Daten zu verarbeiten oder zu speichern, die von HTML -Formularen übermittelt, dynamische Inhalte generieren und Statussinformationen unter dem staatenlosen HTTP -Protokoll verwalten.
92. Lassen Sie uns über die Architektur von Servlet sprechen.
Die Kernschnittstelle, die alle Servlets implementieren müssen, ist javax.servlet.servlet. Jedes Servlet muss diese Schnittstelle direkt oder indirekt implementieren oder javax.servlet.genericsservlet oder javax.servlet.http.httpServlet erben. Schließlich können Servlets mit mehreren Threads mehrere Anforderungen parallel gestalten.
93. Was ist der Unterschied zwischen Applet und Servlet?
Applet ist ein Client -Java -Programm, das im Browser des Client -Hosts ausgeführt wird. Servlet ist eine Komponente des Servers, das auf dem Webserver ausgeführt wird. Applets können Benutzeroberflächenklassen verwenden, während Servlets keine Benutzeroberflächen haben. Stattdessen warten Servlets auf die HTTP -Anfrage des Kunden und generieren dann eine Antwort auf die Anfrage.
94. Was ist der Unterschied zwischen GenericServlet und HttpServlet?
GenericServlet ist ein allgemeines protokollunabhängiges Servlet, das die Schnittstellen Servlet und ServletConfig implementiert. Von GenericServlet geerbte Servlets sollten die methode service () überschreiben. Um ein Servlet zu entwickeln, das auf einer Webseite verwendet werden kann, um HTTP -Anfragen zu erstellen, muss Ihr Servlet von httpServlet geerbt werden. Hier sind Beispiele für Servlets.
95. Erklären Sie den Lebenszyklus eines Servlets.
Für jede Client -Anforderung lädt die Servlet Engine das Servlet, ruft seine Init () -Methode auf und vervollständigt die Initialisierung des Servlets. Anschließend behandelt das Servlet -Objekt alle nachfolgenden Anforderungen des Clients, indem sie für jede Anforderung die Dienstleistung () einzeln aufruft. Schließlich wird die Methode Destroy () des Servlets genannt (Anmerkung des Übersetzers: Dies sollte das Servlet anstelle des Servers sein), um das Servlet zu löschen.
96. Was ist der Unterschied zwischen der Methode von DOGGE () und Dopost ()?
DOGGE: Die GET -Methode findet das Namenswertpaar nach der angeforderten URL an. Da die URL die Anzahl der Zeichen begrenzt, ist die Anzahl der in der Clientanforderung verwendeten Parameterwerte begrenzt. Und die Parameterwerte in der Anforderung sind sichtbar, sodass sensible Informationen auf diese Weise nicht übergeben werden können.
DOPOST: Die Post -Methode überwindet die Einschränkungen der GET -Methode, indem der Anforderungsparameterwert in die Anforderungsstelle platziert. Daher gibt es keine Grenzen für die Anzahl der Parameter, die gesendet werden können. Schließlich sind sensible Informationen für externe Kunden unsichtbar.
97.Was ist eine Webanwendung?
Webanwendungen sind dynamische Erweiterungen des Web- oder Anwendungsservers. Es gibt zwei Arten von Webanwendungen: Präsentationsorientiert und serviceorientiert. Leistungsorientierte Webanwendungen erstellen Webseiten, die interaktive Interaktionen in vielen Markup-Sprachen und dynamischen Inhalten als Antworten auf Anforderungen enthalten. Service-orientierte Webanwendungen implementieren den Endpunkt des Webdienstes. Im Allgemeinen kann eine Webanwendung als Sammlung von Servlets angesehen werden, die unter einer bestimmten Teilmenge des Server -URL -Namespace installiert sind.
98.Was ist die Serverseite?
Server-Side-Inclusion (SSI) ist eine einfache interpretierte serverseitige Skriptsprache, die hauptsächlich nur im Web verwendet wird und mit Servlet-Tags darin eingebettet ist. Das am häufigsten verwendete Szenario in SSI enthält eine oder mehrere Dateien in einer Webseite eines Webservers. Wenn der Browser auf eine Webseite zugreift, ersetzt der Webserver das Servlet -Tag auf der Webseite durch den vom entsprechenden Servlet generierten Text.
99.Was ist Servlet -Kettung?
Eine Servlet -Kette ist eine Methode, die die Ausgabe eines Servlets an einen anderen Servlet sendet. Die Ausgabe des zweiten Servlets kann an das dritte Servlet gesendet werden und so weiter. Das letzte Servlet in der Kette ist dafür verantwortlich, die Antwort an den Kunden zu senden.
100. Wie kann man wissen, welcher Client -Computer Ihr Servlet anfordert?
Die ServletRequest -Klasse kann die IP -Adresse oder den Hostnamen des Client -Computers herausfinden. GetRemoteaddr () Methode erhält die IP -Adresse des Client -Hosts. GetRemotehost () kann den Hostnamen erhalten. Schauen Sie sich das Beispiel hier an.
101. Was ist die Struktur der HTTP -Antwort?
Die HTTP -Antwort besteht aus drei Teilen:
Statuscode: Beschreibt den Status der Antwort. Kann verwendet werden, um zu überprüfen, ob die Anfrage erfolgreich abgeschlossen wurde. Im Falle eines Anforderungsfehlers kann der Statuscode verwendet werden, um die Ursache für den Fehler herauszufinden. Wenn das Servlet den Statuscode nicht zurückgibt, wird der erfolgreiche Statuscode httpServletResponse.sc_ok standardmäßig zurückgegeben.
HTTP -Header: Sie enthalten weitere Informationen über die Antwort. Zum Beispiel: Der Header kann das Ablaufdatum angeben, an dem die Antwort als Ablauf berücksichtigt wird, oder das Codierungsformat angeben, das zur sicheren Übertragung von Entitätsinhalten an den Benutzer verwendet wird. So rufen Sie hier den HTTP -Header in Serlet -Look ab.
Körper: Es enthält den Inhalt der Antwort. Es kann HTML -Code, Bilder usw. enthalten. Der Körper besteht aus Datenbytes, die unmittelbar nach dem Header in einer HTTP -Nachricht übertragen werden.
102.Was sind Kekse? Was ist der Unterschied zwischen Sitzung und Cookies?
Ein Cookie ist eine Information, die von einem Webserver an einen Browser gesendet wird. Der Browser speichert Cookies für jeden Webserver in der lokalen Datei. Wenn der Browser in Zukunft eine Anfrage an einen bestimmten Webserver sendet, wird auch alle für den Server gespeicherten Cookies gesendet. Im Folgenden listet der Unterschied zwischen Sitzung und Cookies auf:
Unabhängig davon, welche Einstellungen der Client -Browser ausführt, sollte die Sitzung normal funktionieren. Der Client kann Cookies deaktivieren, aber die Sitzung funktioniert weiterhin, da der Client die Serversitzung nicht deaktivieren kann.
Sitzung und Cookies unterscheiden sich auch in Bezug auf die gespeicherte Datenmenge. Die Sitzung kann jedes Java -Objekt speichern und der Cookie kann nur Objekte vom String -Typ speichern.
103. In welchem Protokoll kommuniziert der Browser und das Servlet, um zu kommunizieren?
Der Browser- und Servlet -Kommunikation verwendet das HTTP -Protokoll.
104. Was ist ein HTTP -Tunnel?
Das HTTP -Tunneling ist eine Technologie, die HTTP oder HTTPS verwendet, um mehrere Netzwerkprotokolle für die Kommunikation zu verkapulieren. Daher spielt das HTTP -Protokoll die Rolle einer Wrapper, die Pipelines für Netzwerkprotokolle für die Kommunikation öffnet. Eine Anfrage, die Anfragen von anderen Protokollen in HTTP abdeckt, ist ein HTTP -Tunnel.
105. Was ist der Unterschied zwischen SendRedirect () und Vorwärts () Methoden?
Die SendRedirect () -Methode erstellt eine neue Anfrage, während die Stürmer () -Methode einfach die Anforderung an ein neues Ziel weiterleitet. Nach dem Umleiten werden Objekte im Bereich der vorherigen Anforderung ungültig, da eine neue Anfrage generiert wird. Nach dem Weiterleiten sind Objekte im Rahmen der vorherigen Anfrage weiterhin zugänglich. Es wird allgemein angenommen, dass SendRedirect () langsamer ist als vorwärts ().
106.Was ist URL -Codierung und URL -Dekodierung?
Die URL -Codierung ist dafür verantwortlich, Leerzeichen und andere Sonderzeichen in der URL durch die entsprechende hexadezimale Darstellung zu ersetzen, ansonsten entschlüsselt sie.
JSP
107.Was ist eine JSP -Seite?
Eine JSP -Seite ist ein Textdokument, das zwei Texttypen enthält: statische Daten und JSP -Elemente. Statische Daten können in einem textbasierten Format wie HTML oder XML dargestellt werden. JSP ist eine Technologie, die statische und dynamisch erzeugte Inhalte mischt. Hier ist ein JSP -Beispiel.
108.Wie werden JSP -Anfragen bearbeitet?
Der Browser muss zunächst eine Seite anfordern, die mit der .jsp -Erweiterung endet, eine JSP -Anforderung einleiten, und dann liest der Webserver die Anforderung und konvertiert die JSP -Seite mit dem JSP -Compiler in eine Servlet -Klasse. Es ist zu beachten, dass die JSP -Datei nur dann kompiliert wird, wenn sich die erste Anfrage oder die JSP -Datei ändert, und der Server ruft die Servlet -Klasse auf, um die Anfrage des Browsers zu verarbeiten. Sobald die Anfrageausführung abgeschlossen ist, sendet das Servlet die Antwort an den Client. Hier sehen wir, wie Sie Anforderungsparameter in JSP erhalten.
109.Was sind die Vorteile von JSP?
Die Vorteile der Verwendung von JSP sind unten aufgeführt:
110.Was ist eine JSP -Richtlinie? Was sind die verschiedenen Arten von Richtlinien in JSP?
Die Anweisung ist die Anweisung, die die JSP -Engine verarbeiten muss, wenn eine JSP -Seite in ein Servlet zusammengestellt wird. Die Anweisung wird verwendet, um Anweisungen auf Seitenebene festzulegen, Daten aus externen Dateien einzufügen und eine benutzerdefinierte Tag-Bibliothek anzugeben. Die Richtlinie wird zwischen < %@ und %> definiert. Im Folgenden sind die verschiedenen Arten von Richtlinien aufgeführt:
Richtlinie einbeziehen: Wird verwendet, um Dateien und Verschmelzungsdateiinhalte in die aktuelle Seite einzuschließen.
Seitenrichtlinie: Wird verwendet, um bestimmte Eigenschaften auf JSP -Seiten wie Fehlerseiten und Puffer zu definieren.
Taglib -Anweisung: Wird verwendet, um die in der Seite verwendete benutzerdefinierte Tag -Bibliothek zu deklarieren.
111.Was ist JSP -Aktion?
JSP -Aktionen steuern das Verhalten der Servlet -Engine mit der XML -Syntaxstruktur. Wenn die JSP -Seite angefordert wird, wird die JSP -Aktion ausgeführt. Sie können dynamisch in Dateien eingefügt werden, Javabäekomponenten wiederverwenden, Benutzer an andere Seiten weitergeleitet oder HTML-Code für Java-Plug-Ins generiert werden. Die verfügbaren Aktionen sind unten aufgeführt:
112.Was sind Drehbuch?
In der JSP -Technologie sind die Drehbücher ein Stück Java -Code, das in eine JSP -Seite eingebettet ist. Ein Drehbuch ist alles, was sich in einem Tag befindet. Zwischen dem Tag kann der Benutzer ein beliebiges gültiges Skriptlet hinzufügen.
113. Wo ist die Deklaration (Abkaluation)?
Die Deklaration ist der variablen Deklarationen in Java sehr ähnlich und wird verwendet, um Variablen zu deklarieren, die von Ausdrucksformen oder Skriptlets verwendet werden sollen. Die hinzugefügte Anweisung muss mit den Start- und End -Tags umwickelt werden.
114. Was ist ein Ausdruck?
[Die Liste ist sehr lang und kann in den oberen, mittleren und unteren Ebenen veröffentlicht werden]
JSP -Ausdrücke sind der Webserver, der den Wert des Skriptsprachenausdrucks in ein String -Objekt konvertiert und ihn in den Datenstrom einfügt, der an den Client zurückgegeben wird. Der Ausdruck ist zwischen den beiden Tags < %= und %> definiert.
115. Was bedeutet ein implizites Objekt? Was sind die versteckten Objekte?
JSP -implizite Objekte sind einige Java -Objekte auf der Seite, und der JSP -Container ermöglicht es diesen Java -Objekten, von Entwicklern zu verwenden. Entwickler können sie direkt ohne explizite Erklärungen verwenden. JSP -implizite Objekte werden auch als vordefinierte Variablen bezeichnet. Im Folgenden werden die impliziten Objekte auf der JSP -Seite aufgeführt:
Die oben genannten ist eine Zusammenstellung der Informationen für Java -Interviewfragen. Vielen Dank für Ihre Unterstützung für diese Website!