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, setStateEncoderpublic void setDbManager(SimpleDbTransactionManager dbManager)
dbManager - SimpleDbTransactionManagerのインスタンスpublic void setUserSessionSchema(UserSessionSchema userSessionSchema)
userSessionSchema - ユーザセッションテーブルのスキーマpublic java.util.List<SessionEntry> load(java.lang.String sessionId, ExecutionContext executionContext)
SessionStoreload クラス内 SessionStoresessionId - セッションIDexecutionContext - コンテキストpublic void save(java.lang.String sessionId,
java.util.List<SessionEntry> entries,
ExecutionContext executionContext)
既にユーザセッションテーブルにセッションIDのレコードが保存されていた場合は、 そのレコードを削除後に保存処理を行う。
新規でセッション情報を保存する場合で複数スレッドから同時に本処理が呼び出された場合、 登録処理(insert)が同時実行され片方の処理が一意制約違反となる。 このため、一意制約違反が発生した場合には、1回だけリトライを実施する。 リトライ時には、既にレコードが存在しているため、削除処理(delete処理)で排他ロックがかかるため一意制約違反が発生することはない。
save クラス内 SessionStoresessionId - セッションIDentries - セッションエントリリストexecutionContext - コンテキストpublic void delete(java.lang.String sessionId,
ExecutionContext executionContext)
SessionStoredelete クラス内 SessionStoresessionId - セッションIDexecutionContext - コンテキストpublic void invalidate(java.lang.String sessionId,
ExecutionContext executionContext)
SessionStoreinvalidate クラス内 SessionStoresessionId - セッションIDexecutionContext - コンテキストpublic void initialize()
initialize インタフェース内 Initializable