0

現在、MySessionData というセッション スコープのオブジェクトがあります。もともとログアウトするとき、私はちょうど電話しました

getThreadLocalRequest().getSession().invalidate();

問題は、現在、複数のセッション スコープ オブジェクトがあり、ログアウトするために実際に必要なのは 1 つ (MySessionData) のみをクリアすることです。Guice で単一のセッション スコープ オブジェクトをクリアする方法を知っている人はいますか? これが従来のセッション オブジェクトを使用している場合は、セッション マップでキーと値のペアを null に設定するだけです。

4

1 に答える 1

1

私は通常、guice セッション オブジェクトをホルダーとして使用します。そのように MySessionData を実装する場合、clear() メソッドを定義して、保持されているすべてのオブジェクトを削除またはクリアする必要があります。

十分でない場合でも、セッションを無効にすることができます。この無効化のためにセッションで参照を保持する必要がある場合は、ThreadLocal 変数を使用し、ServletFilter を使用して設定できます。

于 2011-08-04T23:02:22.573 に答える