クラス ResourceKeyspacePopulator
java.lang.ObjectSE
org.springframework.data.cassandra.core.cql.session.init.ResourceKeyspacePopulator
- 実装されたすべてのインターフェース:
KeyspacePopulator
外部リソースで定義された CQL スクリプトを使用して、キースペースを設定、初期化、クリーンアップします。
- 単一の CQL スクリプトの場所を追加するには、
addScript(org.springframework.core.io.Resource)
を呼び出します。 - 複数の CQL スクリプトの場所を追加するには、
addScripts(org.springframework.core.io.Resource...)
を呼び出します。 - その他の構成オプションについては、このクラスの setter メソッドを参照してください。
populate(com.datastax.oss.driver.api.core.CqlSession)
またはexecute(org.springframework.data.cassandra.SessionFactory)
を呼び出して、構成されたスクリプトを使用してデータベースを初期化またはクリーンアップします。
- 導入:
- 3.0
- 作成者:
- Mark Paluch
- 関連事項:
コンストラクターのサマリー
コンストラクターコンストラクター説明デフォルト設定で新しいResourceKeyspacePopulator
を構築します。ResourceKeyspacePopulator
(boolean continueOnError, boolean ignoreFailedDrops, StringSE cqlScriptEncoding, Resource... scripts) 指定された値を使用して新しいResourceKeyspacePopulator
を構築します。ResourceKeyspacePopulator
(Resource... scripts) 提供されたスクリプトのデフォルト設定を使用して新しいResourceKeyspacePopulator
を構築します。メソッドのサマリー
修飾子と型メソッド説明void
データベースを初期化またはクリーンアップするために実行するスクリプトを追加します。void
addScripts
(Resource... scripts) データベースを初期化またはクリーンアップするために実行する複数のスクリプトを追加します。void
execute
(SessionFactory sessionFactory) 指定されたSessionFactory
に対してこのResourceKeyspacePopulator
を実行します。void
populate
(com.datastax.oss.driver.api.core.CqlSession session) 提供された CqlSession 接続を使用して、データベースを作成、初期化、クリーンアップします。void
setBlockCommentEndDelimiter
(StringSE blockCommentEndDelimiter) CQL スクリプト内のブロックコメントを識別する終了区切り文字を設定します。void
setBlockCommentStartDelimiter
(StringSE blockCommentStartDelimiter) CQL スクリプト内のブロックコメントを識別する開始区切り文字を設定します。void
setCommentPrefix
(StringSE commentPrefix) CQL スクリプト内の単一行コメントを識別するプレフィックスを設定します。void
setCommentPrefixes
(StringSE... commentPrefixes) CQL スクリプト内の単一行コメントを識別するプレフィックスを設定します。void
setContinueOnError
(boolean continueOnError) CQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグ。void
setCqlScriptEncoding
(StringSE cqlScriptEncoding) プラットフォームのエンコーディングと異なる場合は、構成された CQL スクリプトのエンコーディングを指定します。void
setIgnoreFailedDrops
(boolean ignoreFailedDrops) 失敗した CQLDROP
ステートメントを無視できることを示すフラグ。void
setScripts
(Resource... scripts) 実行するスクリプトを設定して、データベースを初期化またはクリーンアップし、以前に追加したスクリプトを置き換えます。void
setSeparator
(StringSE separator) カスタムの場合は、ステートメントの区切り記号を指定します。
コンストラクターの詳細
ResourceKeyspacePopulator
public ResourceKeyspacePopulator()デフォルト設定で新しいResourceKeyspacePopulator
を構築します。ResourceKeyspacePopulator
提供されたスクリプトのデフォルト設定を使用して新しいResourceKeyspacePopulator
を構築します。- パラメーター:
scripts
- データベースを初期化またはクリーンアップするために実行するスクリプト (非 null)
ResourceKeyspacePopulator
public ResourceKeyspacePopulator(boolean continueOnError, boolean ignoreFailedDrops, @Nullable StringSE cqlScriptEncoding, Resource... scripts) 指定された値を使用して新しいResourceKeyspacePopulator
を構築します。- パラメーター:
continueOnError
- CQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグignoreFailedDrops
- 失敗した CQLDROP
ステートメントを無視できることを示すフラグcqlScriptEncoding
- 提供された CQL スクリプトのエンコーディング (プラットフォームのエンコーディングを示すために null または空の場合があります)scripts
- データベースを初期化またはクリーンアップするために実行するスクリプト (非 null)
メソッドの詳細
addScript
データベースを初期化またはクリーンアップするために実行するスクリプトを追加します。- パラメーター:
script
- CQL スクリプトへのパス (null にはなりません)。
addScripts
データベースを初期化またはクリーンアップするために実行する複数のスクリプトを追加します。- パラメーター:
scripts
- 実行するスクリプト(null にはなりません)。
setScripts
実行するスクリプトを設定して、データベースを初期化またはクリーンアップし、以前に追加したスクリプトを置き換えます。- パラメーター:
scripts
- 実行するスクリプト(null にはなりません)。
setCqlScriptEncoding
プラットフォームのエンコーディングと異なる場合は、構成された CQL スクリプトのエンコーディングを指定します。- パラメーター:
cqlScriptEncoding
- スクリプトで使用されるエンコーディング(プラットフォームエンコーディングを示すために null または空の場合があります)。- 関連事項:
setSeparator
カスタムの場合は、ステートメントの区切り記号を指定します。指定しない場合はデフォルトで
";"
になり、最後の手段として"\n"
にフォールバックします。ScriptUtils.EOF_STATEMENT_SEPARATOR
に設定すると、各スクリプトに区切り文字のない単一のステートメントが含まれることを通知できます。- パラメーター:
separator
- スクリプトステートメントの区切り文字。
setCommentPrefix
CQL スクリプト内の単一行コメントを識別するプレフィックスを設定します。デフォルトは
"--"
です。- パラメーター:
commentPrefix
- 単一行コメントのプレフィックス。- 関連事項:
setCommentPrefixes
CQL スクリプト内の単一行コメントを識別するプレフィックスを設定します。デフォルトは
["--"]
です。- パラメーター:
commentPrefixes
- 単一行コメントのプレフィックス。
setBlockCommentStartDelimiter
CQL スクリプト内のブロックコメントを識別する開始区切り文字を設定します。デフォルトは
"/*"
です。- パラメーター:
blockCommentStartDelimiter
- ブロックコメントの開始区切り文字(null または空になることはありません)。- 関連事項:
setBlockCommentEndDelimiter
CQL スクリプト内のブロックコメントを識別する終了区切り文字を設定します。デフォルトは
"*/"
です。- パラメーター:
blockCommentEndDelimiter
- ブロックコメントの終了区切り文字(null または空にはなりません)。- 関連事項:
setContinueOnError
public void setContinueOnError(boolean continueOnError) CQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグ。デフォルトは false です。
- パラメーター:
continueOnError
- エラーが発生してもスクリプトの実行を続行する場合は true
setIgnoreFailedDrops
public void setIgnoreFailedDrops(boolean ignoreFailedDrops) 失敗した CQLDROP
ステートメントを無視できることを示すフラグ。これは、CQL ダイアレクトが
DROP
ステートメントのIF EXISTS
句をサポートしていない非埋め込みデータベースに役立ちます。デフォルトは false であるため、ポピュレーターが誤って実行された場合、スクリプトが
DROP
ステートメントで始まると、ポピュレーターはすぐに失敗します。- パラメーター:
ignoreFailedDrops
- 失敗したドロップステートメントを無視する必要がある場合は true。
populate
インターフェースからコピーされた説明:KeyspacePopulator
提供された CqlSession 接続を使用して、データベースを作成、初期化、クリーンアップします。具体的な実装では、エラーが発生した場合に
RuntimeException
SE をスローする場合がありますが、代わりに特定のScriptException
をスローすることを強くお勧めします。例: Spring のResourceKeyspacePopulator
は、すべての例外をScriptExceptions
にラップします。- 次で指定:
- インターフェース
KeyspacePopulator
のpopulate
- パラメーター:
session
- キースペースを設定するために使用する CQLCqlSession
。すでに構成されており、すぐに使用できます。null にはなりません。- 例外:
ScriptException
- 他のすべてのエラーの場合
execute
指定されたSessionFactory
に対してこのResourceKeyspacePopulator
を実行します。- パラメーター:
sessionFactory
- 実行するSessionFactory
(非 null)- 例外:
ScriptException
- エラーが発生した場合- 関連事項: