public class SessionScope extends AbstractRequestAttributesScope
Scope
実装。RequestContextListener
、RequestContextFilter
、DispatcherServlet
を介してエクスポートできるスレッドバインド RequestAttributes
インスタンスに依存します。
RequestContextHolder.currentRequestAttributes()
, RequestAttributes.SCOPE_SESSION
, RequestContextListener
, RequestContextFilter
, DispatcherServlet
コンストラクターと説明 |
---|
SessionScope() |
修飾子と型 | メソッドと説明 |
---|---|
ObjectSE | get(StringSE name, ObjectFactory<?> objectFactory) 基になるスコープから指定された名前のオブジェクトを返します。基になるストレージメカニズムで見つからない場合は creating it 。 |
StringSE | getConversationId() 存在する場合、現在の基礎となるスコープの会話 ID を返します。 |
protected int | getScope() 実際のターゲットスコープを決定するテンプレートメソッド。 |
ObjectSE | remove(StringSE name) 指定された name を持つオブジェクトを基になるスコープから削除します。 |
registerDestructionCallback, resolveContextualObject
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
protected int getScope()
AbstractRequestAttributesScope
AbstractRequestAttributesScope
の getScope
RequestAttributes
定数の形式)RequestAttributes.SCOPE_REQUEST
, RequestAttributes.SCOPE_SESSION
public StringSE getConversationId()
Scope
会話 ID の正確な意味は、基礎となるストレージメカニズムによって異なります。セッションスコープのオブジェクトの場合、会話 ID は通常 session ID
EE と等しい(または派生する)でしょう。セッション全体に含まれるカスタム会話の場合、現在の会話の特定の ID が適切です。
注: これはオプションの操作です。基になるストレージメカニズムにこのような ID の明らかな候補がない場合、このメソッドの実装で null
を返すことは完全に有効です。
null
public ObjectSE get(StringSE name, ObjectFactory<?> objectFactory)
Scope
creating it
。これは、Scope の中心的な操作であり、絶対に必要な唯一の操作です。
Scope
の get
AbstractRequestAttributesScope
の get
name
- 取得するオブジェクトの名前 objectFactory
- 基になるストレージメカニズムに存在しない場合、スコープオブジェクトの作成に使用する ObjectFactory
null
)@Nullable public ObjectSE remove(StringSE name)
Scope
name
を持つオブジェクトを基になるスコープから削除します。 オブジェクトが見つからなかった場合、null
を返します。それ以外の場合は、削除された Object
を返します。
実装は、指定されたオブジェクトの登録された破棄コールバックも削除する必要があることに注意してください。ただし、この場合、登録された破棄コールバックを実行する必要はありません。オブジェクトは呼び出し元によって破棄されるためです(適切な場合)。
注: これはオプションの操作です。実装は、オブジェクトの明示的な削除をサポートしていない場合、UnsupportedOperationException
SE をスローする場合があります。
Scope
の remove
AbstractRequestAttributesScope
の remove
name
- 削除するオブジェクトの名前 null
Scope.registerDestructionCallback(java.lang.String, java.lang.Runnable)