Dies ist eine ziemlich grundlegende Frage. Ich lerne von einem Lehrbuch über JSF-Web-Apps und verwende eine @ SessionObject-Bean, um die Sitzung zu verwalten. Das Buch erwähnt, dass wenn Sie den Browser schließen, die Sitzung endet, und dies war einfach mit Tests zu überprüfen. Ich bin mir aber nicht sicher, wie die Web-App darüber informiert wird, dass der Browser geschlossen und wieder geöffnet wurde. Ich konnte keine lokalen Cookies finden. Wie erhält die Web-App diese Informationen?Wie weiß die Java Web-App mit @SessionScoped Bean, ob der Browser neu gestartet wurde?
Danke!
Verwandte: http://stackoverflow.com/questions/3106452/how-do-servlets-work-instantiation-session-variables-and-multithreading/3106909#3106909 – BalusC
Wenn Sie den Browser, die Sitzung bleibt in der Nähe !! !! Es tritt schließlich aufgrund eines maximalen inaktiven Intervalls aus und wird aus einer Hintergrund-HashMap (angenommene Implementierungsdetail) entfernt, die die SessionID dem Session-Objekt zuordnet. – MJB
@MJB, Es gibt mindestens zwei Arten von Sitzungen. Der HTTP-Server, auf dem Benutzerdaten und die Browsersitzung gespeichert werden. Denken Sie an den Lebenszyklus des Browsers seit dem Start und bis es geschlossen wurde. Willst du das fangen? Dann erstellen Sie einen Sitzungscookie und überprüfen, ob die neue Browsersitzung gestartet wurde oder nicht. – ahanin