Schauen wir uns eine bessere Erklärung der Sitzung an:
Die Sitzung ist eine Sitzung. Es kann Benutzerinformationen speichern, ohne den Browser zu schließen, der wie ein temporärer Container ist, um diese temporären Dinge zu speichern. Wenn Sie beispielsweise angemeldet sind, speichern Sie Benutzerinformationen von einer Webseite auf eine andere, können Benutzerinformationen mithilfe von Sitzungen gespeichert werden, um Website -Einkaufswagen -Karren zu speichern, die mit der Sitzung implementiert werden können.
Warum Sie eine Sitzung brauchen
Dies dient dazu, die Einschränkungen des HTTP -Protokolls zu erfüllen. Wenn der Benutzer eine Seite besucht, gibt der Server die Anforderung zurück (z. B. nach dem Besuch einer Webseite, auf der Seite die Seiteninhalts- und Schnittstellen -Benutzeroberfläche an Sie), und selbst wenn sie fertig ist, wird sie getrennt. Der Server verfolgt den Aufgabenstatus des Clients (Browser) nicht mehr. Daher ist jede Anfrage von HTTP unabhängig und nicht kontinuierlich. HTTP wird auch als Staateless Protokoll bezeichnet. Wenn wir die eigenen Daten des Benutzers in einer Gelegenheit oder einem bestimmten Prozess bedienen möchten, ist dies sehr problematisch und sogar gefährlich. Sie können beispielsweise über die URL -Parameterübertragung mit dem Server interagieren und Vorgänge implementieren.
Die Entstehung der Sitzung löst dieses Problem. Die Sitzung wird auf dem Server erstellt und vom Server nach einem bestimmten Zeitraum zerstört. In diesem Zeitraum wird die Sitzung zwischen dem Client und dem Server beibehalten, und der Client verwendet die Sitzungsinformationen auf dem Server, um einige Daten zu finden oder zu bedienen.
So verwenden Sie Sitzung
Die Java -API gibt uns nur eine Möglichkeit, die Sitzung in Bezug auf die aktuelle Sitzung zu erhalten:
HttpSession Session = Request.GetSession (); // oder httpSession Session = Request.GetSession (boolean);
Wert setzen:
Session.SetAttribute ("Schlüssel", Wertobjekt);Erhalten Sie den Wert:
Objekttyp OBJ = (Objekttyp) Sitzung
Löschen Sie die Sitzung, um das Attribut anzugeben:
Session.removeAttribute ("Schlüssel");Löschen Sie alle Sitzungen, um die aktuelle Sitzung völlig ungültig zu machen:
Session.invalidate ();
Sitzungsdauereinstellung zur Sitzung
1. Tomcat -Installationsstandort conf/web.xml:
<Sesion-Config> <Session-Timeout> 30 </Session-Timeout> </Session-Config>
30 Punkte
2. Tomcat Installationsposition conf/server.xml:
<Context path = "/test" docbase = "/test" defaultSession timeout = "3600" iswarexpanded = "true" isWarvalidated = "false" isinvokerEnabled = "true" isworkDirpersist = "false"/>
Einheiten in Sekunden
3. Einstellungen für Java -Code:
HttpSession Session = Request.GetSession (); Session.setMaxinActiveInterval (1200);
0 Punkte:
Andere Anweisungen:
1. Sitzungsstatus: Sitzungsablauf:
1>. Der Client -Browser schließt:
2>. Sitzung Die Sitzung abläuft ab;
3>. Die Client -Sitzung ruft .invalidate () an;
2. Ob der Browser geschlossen ist und die Sitzung noch da ist;
Wenn der Clientbrowser geschlossen ist, wird die Sitzung für einen bestimmten Zeitraum weiterhin auf dem Server vorhanden. Wenn der Browser jedoch erneut öffnet, wird eine neue Sitzung generiert. Der Browser entspricht der Serversitzung über das generierte SessionID -Attribut. Die letzte Sitzung ist immer noch da, kann aber nicht zugegriffen werden.
3. < % @ page session = "false" %> Wie ist die Situation ?:
Die Bedeutung dieses Satzes ist, dass die Sitzung derzeit nicht verwendet werden kann, aber die Seitensitzung kann weiterhin erstellt werden.
4. Wann wird die Sitzung erstellt:
Erstellt, wenn das Programm httpServletRequest.getSession (true) aufruft; Wenn die Seite nicht <%@ page session = "false"%> verwendet, wenn die JSP -Seite in servlet zusammengestellt wird, ist httpSession sis Session = httpServletRequest.getSession (true);
Zusammenfassen
In dem oben genannten geht es darum, Sitzungen in Java zu verstehen. Ich hoffe, es wird für alle hilfreich sein. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!