public class DbStore extends SessionStore implements Initializable
DbStore
。
デフォルトのストア名は"db"。コンストラクタと説明 |
---|
DbStore()
コンストラクタ。
|
修飾子とタイプ | メソッドと説明 |
---|---|
void |
delete(java.lang.String sessionId,
ExecutionContext executionContext)
セッションの内容をストアから削除する。
|
void |
initialize()
初期化処理。
|
void |
invalidate(java.lang.String sessionId,
ExecutionContext executionContext)
セッションストアを無効にする。
|
java.util.List<SessionEntry> |
load(java.lang.String sessionId,
ExecutionContext executionContext)
セッションの内容をストアからロードする。
|
void |
save(java.lang.String sessionId,
java.util.List<SessionEntry> entries,
ExecutionContext executionContext)
ユーザセッションテーブルにセッション情報を保存する。
|
void |
setDbManager(SimpleDbTransactionManager dbManager)
DbManagerのインスタンスをセットする。
|
void |
setUserSessionSchema(UserSessionSchema userSessionSchema)
ユーザセッションテーブルのスキーマをセットする。
|
decode, encode, getExpiresMilliSeconds, getName, getStateEncoder, isExtendable, setExpires, setExpires, setName, setStateEncoder
public void setDbManager(SimpleDbTransactionManager dbManager)
dbManager
- SimpleDbTransactionManagerのインスタンスpublic void setUserSessionSchema(UserSessionSchema userSessionSchema)
userSessionSchema
- ユーザセッションテーブルのスキーマpublic java.util.List<SessionEntry> load(java.lang.String sessionId, ExecutionContext executionContext)
SessionStore
load
クラス内 SessionStore
sessionId
- セッションIDexecutionContext
- コンテキストpublic void save(java.lang.String sessionId, java.util.List<SessionEntry> entries, ExecutionContext executionContext)
既にユーザセッションテーブルにセッションIDのレコードが保存されていた場合は、 そのレコードを削除後に保存処理を行う。
新規でセッション情報を保存する場合で複数スレッドから同時に本処理が呼び出された場合、 登録処理(insert)が同時実行され片方の処理が一意制約違反となる。 このため、一意制約違反が発生した場合には、1回だけリトライを実施する。 リトライ時には、既にレコードが存在しているため、削除処理(delete処理)で排他ロックがかかるため一意制約違反が発生することはない。
save
クラス内 SessionStore
sessionId
- セッションIDentries
- セッションエントリリストexecutionContext
- コンテキストpublic void delete(java.lang.String sessionId, ExecutionContext executionContext)
SessionStore
delete
クラス内 SessionStore
sessionId
- セッションIDexecutionContext
- コンテキストpublic void invalidate(java.lang.String sessionId, ExecutionContext executionContext)
SessionStore
invalidate
クラス内 SessionStore
sessionId
- セッションIDexecutionContext
- コンテキストpublic void initialize()
initialize
インタフェース内 Initializable