クラス JdbcMetadataStore
java.lang.ObjectSE
org.springframework.integration.jdbc.metadata.JdbcMetadataStore
- 実装されているすべてのインターフェース:
InitializingBean、Lifecycle、Phased、SmartLifecycle、ConcurrentMetadataStore、MetadataStore
public class JdbcMetadataStore
extends ObjectSE
implements ConcurrentMetadataStore, InitializingBean, SmartLifecycle
JDBC を介したリレーショナルデータベースを使用した
ConcurrentMetadataStore の実装。必要なテーブルを作成するための SQL スクリプトは、org/springframework/integration/jdbc/schema-*.sql としてパッケージ化されています。ここで、* はターゲットデータベース型です。 この ConcurrentMetadataStore を使用するには、トランザクション管理が必要です。
このクラスは SmartLifecycle を実装し、start() で指定されたプレフィックスに従って SELECT COUNT(METADATA_KEY) FROM %sMETADATA_STORE クエリを呼び出し、必要なテーブルが DB に存在するかどうかを確認します。テーブルが存在しない場合、アプリケーションコンテキストは起動できません。このチェックは setCheckDatabaseOnStart(boolean) を介して無効にできます。
- 導入:
- 5.0
- 作成者:
- Bojan Vukasovic, Artem Bilan, Gary Russell
フィールドのサマリー
フィールドインターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASEコンストラクターの概要
コンストラクターコンストラクター説明JdbcMetadataStore(DataSourceSE dataSource) 提供された dataSourceDataSourceSE を使用してJdbcMetadataStoreをインスタンス化します。JdbcMetadataStore(JdbcOperations jdbcOperations) 提供された jdbcOperationsJdbcOperationsを使用してJdbcMetadataStoreをインスタンス化します。メソッドのサマリー
修飾子と型メソッド説明voidこの MetadataStore から指定されたキーの値を読み取ります。booleanbooleanvoidキーと値のペアをこの MetadataStore に書き込みます。putIfAbsent(StringSE key, StringSE value) キーをストアに原子的に挿入します。この MetadataStore から指定されたキーの値を削除します。boolean古い値が oldValue 引数と一致する場合、ストア内のキーの値をアトミックに置き換えます。voidsetCheckDatabaseOnStart(boolean checkDatabaseOnStart) 開始時にデータベースチェッククエリを実行するかどうかのフラグ。voidsetLockHint(StringSE lockHint) ロックベースの操作でクエリの行ロックヒントを指定します。voidこのストアで保持されるすべてのメッセージの一意のグループ化識別子。voidsetTablePrefix(StringSE tablePrefix) テーブルプレフィックスプロパティのパブリック setter。voidstart()voidstop()クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース org.springframework.context.SmartLifecycle から継承されたメソッド
getPhase, stop
フィールドの詳細
DEFAULT_TABLE_PREFIX
コンストラクターの詳細
JdbcMetadataStore
提供された dataSourceDataSourceSE を使用してJdbcMetadataStoreをインスタンス化します。- パラメーター:
dataSource-DataSourceSE
JdbcMetadataStore
提供された jdbcOperationsJdbcOperationsを使用してJdbcMetadataStoreをインスタンス化します。- パラメーター:
jdbcOperations-JdbcOperations
メソッドの詳細
setTablePrefix
テーブルプレフィックスプロパティのパブリック setter。これは、クエリが実行される前にすべてのテーブル名の前に付けられます。デフォルトはDEFAULT_TABLE_PREFIXです。- パラメーター:
tablePrefix- 設定する tablePrefix
setRegion
このストアで永続化されるすべてのメッセージの一意のグループ化識別子。複数のリージョンを使用すると、さまざまな目的でストアを(必要に応じて)パーティション化できます。デフォルトはDEFAULTです。- パラメーター:
region- 設定する領域名
setLockHint
ロックベースの操作でクエリの行ロックヒントを指定します。デフォルトはFOR UPDATEです。ターゲット RDBMS がクエリからのテーブルのロックをサポートしていない場合は、空の文字列として指定できます。値は RDBMS ベンダーによって異なります。たとえば、SQL Server にはWITH (ROWLOCK)が必要です。- パラメーター:
lockHint- RDBMS ベンダー固有のロックヒント。- 導入:
- 5.0.7
afterPropertiesSet
public void afterPropertiesSet()- 次で指定:
- インターフェース
InitializingBeanのafterPropertiesSet
setCheckDatabaseOnStart
public void setCheckDatabaseOnStart(boolean checkDatabaseOnStart) 開始時にデータベースチェッククエリを実行するかどうかのフラグ。- パラメーター:
checkDatabaseOnStart- データベースチェックを実行しない場合は false。- 導入:
- 6.2
isAutoStartup
public boolean isAutoStartup()- 次で指定:
- インターフェース
SmartLifecycleのisAutoStartup
start
stop
isRunning
putIfAbsent
インターフェースからコピーされた説明:ConcurrentMetadataStoreキーをストアに原子的に挿入します。- 次で指定:
- インターフェース
ConcurrentMetadataStoreのputIfAbsent - パラメーター:
key- キー。value- 値。- 戻り値:
- 成功した場合は null、それ以外の場合は古い値。
replace
インターフェースからコピーされた説明:ConcurrentMetadataStore古い値が oldValue 引数と一致する場合、ストア内のキーの値をアトミックに置き換えます。- 次で指定:
- インターフェース
ConcurrentMetadataStoreのreplace - パラメーター:
key- キー。oldValue- 古い値。newValue- 新しい値。- 戻り値:
- 成功した場合は true。
put
インターフェースからコピーされた説明:MetadataStoreキーと値のペアをこの MetadataStore に書き込みます。- 次で指定:
- インターフェース
MetadataStoreのput - パラメーター:
key- キー。value- 値。
get
インターフェースからコピーされた説明:MetadataStoreこの MetadataStore から指定されたキーの値を読み取ります。- 次で指定:
- インターフェース
MetadataStoreのget - パラメーター:
key- キー。- 戻り値:
- 値。
remove
インターフェースからコピーされた説明:MetadataStoreこの MetadataStore から指定されたキーの値を削除します。- 次で指定:
- インターフェース
MetadataStoreのremove - パラメーター:
key- キー。- 戻り値:
- キーに関連付けられた以前の値。キーのマッピングがなかった場合は null。