2013-03-14 17 views
40

SpringフレームワークでのsessionとglobalSessionの違いは何ですか?Spring beanスコープ:sessionおよびglobalSession

<bean id="exampleBean" class="com.test.baen.ExampleBean" scope="session"/> 
<bean id="exampleBean" class="com.test.baen.ExampleBean" scope="globalSession"/> 

私の調査によれば、どちらもWeb対応Spring ApplicationContextのコンテキストで有効です。

セッションBeanのスコープはユーザーセッションまで残っていますが、アプリケーション全体でglobalSession Beanスコープを使用できるようになりますか?

適用範囲ですか?

「グローバルHTTPセッション」という用語を理解できません。それは、グローバルなHTTPセッションを通じて利用可能になるでしょうか?

答えて

77

globalSessionは、ポートレットアプリケーションに接続されているものです。アプリケーションがポートレットコンテナで動作する場合、ポートレットはいくらかの量で構築されます。各ポートレットには独自のセッションがありますが、アプリケーション内のすべてのポートレットにグローバル変数を格納する場合は、格納する必要があります。globalSession。このスコープは、サーブレットベースのアプリケーションの範囲であるsessionとは異なる特別な効果を持ちません。春のドキュメント::

セッションを1として

+0

ありがとうございます。 +1してください。 –

8

は - HTTPセッションのライフサイクルに単一Bean定義をスコープ。 Web対応Spring ApplicationContextのコンテキストでのみ有効です。

グローバルセッション - 単一のBean定義をグローバルHTTPセッションのライフサイクルにスコープします。通常、ポートレット・コンテキストで使用する場合にのみ有効です。 Web対応Spring ApplicationContextのコンテキストでのみ有効です。

+0

Nice answer .... –

関連する問題