5

あるイベントに基づいてユーザーのセッションを無効にしたい。セッションIDを保存しますが、このIDからHttpSessionを取得するにはどうすればよいですか?HttpSessionContextクラスは、置き換えなしで非推奨になりました。

4

2 に答える 2

6

すでにこれを行っているメソッドは非推奨になりました。ただし、HttpSessionListenerを使用してアイデアを実装できます。新しいセッションが作成されたら、セッションIDをキーとしてHashMapに保存し、オブジェクトは実際のHttpSessionObjectです。これで参考になります。

于 2009-08-09T13:11:36.403 に答える
3

サーブレット2.2は、セキュリティ上の理由からこれを特に非推奨にしたため、これを行う公式の方法はありません。推奨されませんが、Tomcatを使用している場合は、Manager.findSession()を使用してみることができます。

アプリケーションからHttpSessionを削除しました。多くのサーバーが実行されている場合、セッションの同期を維持することは非常に困難です。私たちは自分のマネージャーを書くことによってそれを微調整しようとしましたが、それを正しく機能させることはできません。最後に、約500行のコードを使用して独自のセッション実装を作成しましたが、これははるかにうまく機能します。

于 2009-08-09T13:44:51.430 に答える