Heim  >  Artikel  >  Java  >  So generieren Sie eine Jsession-ID

So generieren Sie eine Jsession-ID

(*-*)浩
(*-*)浩Original
2019-05-20 13:30:479114Durchsuche

Jsessionid ist nur Tomcats Name für sessionid, was eigentlich sessionid ist; in anderen Containern wird es möglicherweise nicht jsessionid genannt.

Lassen Sie uns zunächst über die Erstellung von Sitzungsobjekten in der Webentwicklung und den Betriebsmechanismus zum Generieren und Zurückgeben einer Sitzungs-ID an den Client sprechen.

So generieren Sie eine Jsession-ID

Die Wenn der Client zum ersten Mal auf das Sitzungsobjekt zugreift, wird ein neues Sitzungsobjekt erstellt und gleichzeitig eine Sitzungs-ID generiert. In dieser Antwort wird die Sitzungs-ID in Form einer Antwortnachricht an den Speicher des Client-Browsers zurückgegeben Wird in Form eines Umschreibens der URL an den Client zurückgesendet, um die gesamte Sitzung aufrechtzuerhalten. Solange das Sitzungsobjekt auf der Serverseite nicht zerstört wird, wird beim zukünftigen Aufruf von request.getSession () das vom Sitzungsobjekt generierte Sitzungsobjekt zurückgesendet Die Serverseite wird direkt basierend auf der Sitzungs-ID des Clients abgerufen und nicht erneut erstellt, es sei denn, die Sitzungs-ID wird nicht abgerufen.

Das Folgende wurde unter IE getestet, da ein Fehler von IE6.0 darin besteht, dass die Datenschutzeinstellungen des IE weiterhin Sitzungscookies verwenden, um die Sitzungs-ID zu speichern, selbst wenn alle Cookies blockiert sind. Daher basieren die folgenden Cookies alle auf der Sitzung Kekse besprochen.

(1) Wenn der Server nicht geschlossen ist und der Client das serverseitige Servlet oder JSP erneut anfordert, wird die in der ersten Anforderung generierte Sitzungs-ID angehängt Der Anforderungsheader wird an den Server gesendet. Nach dem Empfang der Sitzungs-ID sucht der Server nach dem Sitzungsobjekt, das dem Server entspricht (dieser Vorgang ist transparent) und gibt das Sitzungsobjekt direkt zurück. Zu diesem Zeitpunkt wird keine Sitzungs-ID neu erstellt . Neues Sitzungsobjekt.

(2) Wenn der Server geschlossen wird (das zuvor generierte Sitzungsobjekt wird ebenfalls sterben) oder nachdem die Zerstörungszeit des Sitzungsobjekts abgelaufen ist, wird das Browserfenster nicht geschlossen Wenn das Serverfenster das Servlet und die JSP erneut auf der Serverseite anfordert, wird die Sitzungs-ID (die Sitzungs-ID, die beim Schließen des Servers oder beim Zerstören der Sitzung generiert wird) ebenfalls an die Serverseite gesendet entsprechendes Sitzungsobjekt basierend auf der Sitzungs-ID, aber zu diesem Zeitpunkt ist das Sitzungsobjekt nicht mehr vorhanden. Zu diesem Zeitpunkt wird ein neues Sitzungsobjekt neu generiert, eine neue Sitzungs-ID generiert und die neu generierte Sitzungs-ID wird auch an den Browser gesendet Speicher in Form einer Antwortnachricht.

(3) Wenn der Server nicht geschlossen ist und das Sitzungsobjekt innerhalb seiner Zerstörungszeit ist, wird das Browserfenster geschlossen Zu diesem Zeitpunkt wird auch die Sitzungs-ID in seinem Speicher zerstört und der Server wird erneut angefordert. Bei Verwendung von Servlet oder JSP wird eine Sitzungs-ID im Browserspeicher neu generiert Zusammenfassend kann der Workflow von jsessionid einfach durch das folgende Diagramm dargestellt werden:

So generieren Sie eine Jsession-ID

Verwandte Lernempfehlungen:
Java-Grundlagen

Das obige ist der detaillierte Inhalt vonSo generieren Sie eine Jsession-ID. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn