クラス AllocatableIdGenerator
- java.lang.Object
-
- com.github.mygreen.sqlmapper.core.id.AllocatableIdGenerator
-
- 直系の既知のサブクラス:
TableIdIncrementer
public abstract class AllocatableIdGenerator extends Object
挿入前に予めIDを生成を行うID生成を行う抽象クラスです。大量にレコードを導入するときは効率的に処理を行うことができます。
ただし、予めIDを生成してキャッシュしておくため、プロセスを再起動すると生成済みのキャッシュされたIDは使われず欠番となります。
- 作成者:
- T.TSUCHIE
-
-
ネストされたクラスの概要
ネストされたクラス 修飾子とタイプ クラス 説明 classAllocatableIdGenerator.IdContext自動生成されるIDの情報を保持する。
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 AllocatableIdGenerator(long allocationSize)
-
メソッドの概要
すべてのメソッド インスタンス・メソッド abstractメソッド concreteメソッド 修飾子とタイプ メソッド 説明 protected abstract longallocateValue(String key, long allocationSize)新たに値を割り当てる。longgetAllocationSize()割り当てサイズprotected abstract longgetCurrentValue(String key)現在のカウンターの値を取得する。longnextValue(String key)新しいIDを取得します。
-
-
-
メソッドの詳細
-
getCurrentValue
protected abstract long getCurrentValue(String key)
現在のカウンターの値を取得する。- パラメータ:
key- 取得するシーケンス名- 戻り値:
- 現在のカウンターの値
-
allocateValue
protected abstract long allocateValue(String key, long allocationSize)
新たに値を割り当てる。- パラメータ:
key- 割り当てるキーの名称allocationSize- 割り当てる値- 戻り値:
- 割り当て後のカウンターの値
-
nextValue
public long nextValue(String key)
新しいIDを取得します。- パラメータ:
key- シーケンス名- 戻り値:
- 新たらしいID
-
getAllocationSize
public long getAllocationSize()
割り当てサイズ
-
-