public class ResourceDatabasePopulator extends ObjectSE implements DatabasePopulator
addScript(org.springframework.core.io.Resource) を呼び出して、単一の SQL スクリプトの場所を追加します。addScripts(org.springframework.core.io.Resource...) を呼び出して、複数の SQL スクリプトの場所を追加します。populate(java.sql.Connection) または execute(javax.sql.DataSource) を呼び出して、構成されたスクリプトを使用してデータベースを初期化またはクリーンアップします。DatabasePopulatorUtils, ScriptUtils| コンストラクターと説明 |
|---|
ResourceDatabasePopulator() デフォルト設定で新しい ResourceDatabasePopulator を構築します。 |
ResourceDatabasePopulator(boolean continueOnError, boolean ignoreFailedDrops, StringSE sqlScriptEncoding, Resource... scripts) 指定された値で新しい ResourceDatabasePopulator を構築します。 |
ResourceDatabasePopulator(Resource... scripts) 提供されたスクリプトのデフォルト設定で新しい ResourceDatabasePopulator を構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void | addScript(Resource script) データベースを初期化またはクリーンアップするために実行するスクリプトを追加します。 |
void | addScripts(Resource... scripts) データベースを初期化またはクリーンアップするために実行する複数のスクリプトを追加します。 |
void | execute(DataSourceSE dataSource) この ResourceDatabasePopulator を指定された DataSourceSE に対して実行します。 |
void | populate(ConnectionSE connection) 提供された JDBC 接続を使用して、データベースにデータを入力、初期化、クリーンアップします。 |
void | setBlockCommentEndDelimiter(StringSE blockCommentEndDelimiter)SQL スクリプト内のブロックコメントを識別する終了区切り文字を設定します。 |
void | setBlockCommentStartDelimiter(StringSE blockCommentStartDelimiter)SQL スクリプト内のブロックコメントを識別する開始区切り文字を設定します。 |
void | setCommentPrefix(StringSE commentPrefix)SQL スクリプト内の単一行コメントを識別する接頭辞を設定します。 |
void | setCommentPrefixes(StringSE... commentPrefixes)SQL スクリプト内の単一行コメントを識別するプレフィックスを設定します。 |
void | setContinueOnError(boolean continueOnError)SQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグ。 |
void | setIgnoreFailedDrops(boolean ignoreFailedDrops) 失敗した SQL DROP ステートメントを無視できることを示すフラグ。 |
void | setScripts(Resource... scripts) 実行するスクリプトを設定して、データベースを初期化またはクリーンアップし、以前に追加したスクリプトを置き換えます。 |
void | setSeparator(StringSE separator) カスタムの場合は、ステートメントの区切り記号を指定します。 |
void | setSqlScriptEncoding(StringSE sqlScriptEncoding) 構成された SQL スクリプトのエンコードを指定します(プラットフォームのエンコードと異なる場合)。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic ResourceDatabasePopulator()
ResourceDatabasePopulator を構築します。public ResourceDatabasePopulator(Resource... scripts)
ResourceDatabasePopulator を構築します。scripts - データベースを初期化またはクリーンアップするために実行するスクリプト (非 null)public ResourceDatabasePopulator(boolean continueOnError,
boolean ignoreFailedDrops,
@Nullable
StringSE sqlScriptEncoding,
Resource... scripts)ResourceDatabasePopulator を構築します。continueOnError - SQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグ ignoreFailedDrops - 失敗した SQL DROP ステートメントを無視できることを示すフラグ sqlScriptEncoding - 提供された SQL スクリプトのエンコーディング (null またはプラットフォームのエンコーディングを示す空の場合があります)scripts - データベースを初期化またはクリーンアップするために実行するスクリプト (非 null)public void addScript(Resource script)
script - SQL スクリプトへのパス (非 null)public void addScripts(Resource... scripts)
scripts - 実行するスクリプト (非 null)public void setScripts(Resource... scripts)
scripts - 実行するスクリプト (非 null)public void setSqlScriptEncoding(@Nullable StringSE sqlScriptEncoding)
sqlScriptEncoding - スクリプトで使用されるエンコーディング (null またはプラットフォームのエンコーディングを示す空の場合があります)addScript(Resource)public void setSeparator(StringSE separator)
指定しない場合はデフォルトで ";" になり、最後の手段として "\n" にフォールバックします。ScriptUtils.EOF_STATEMENT_SEPARATOR に設定すると、各スクリプトに区切り文字のない単一のステートメントが含まれることを通知できます。
separator - スクリプトステートメントセパレーター public void setCommentPrefix(StringSE commentPrefix)
デフォルトは "--" です。
commentPrefix - 単一行コメントの接頭辞 setCommentPrefixes(String...)public void setCommentPrefixes(StringSE... commentPrefixes)
デフォルトは ["--"] です。
commentPrefixes - 単一行コメントの接頭辞 public void setBlockCommentStartDelimiter(StringSE blockCommentStartDelimiter)
デフォルトは "/*" です。
blockCommentStartDelimiter - ブロックコメントの開始区切り文字 (null または空ではありません)setBlockCommentEndDelimiter(java.lang.String)public void setBlockCommentEndDelimiter(StringSE blockCommentEndDelimiter)
デフォルトは "*/" です。
blockCommentEndDelimiter - ブロックコメントの終了区切り文字 (null または空ではありません)setBlockCommentStartDelimiter(java.lang.String)public void setContinueOnError(boolean continueOnError)
デフォルトは false です。
continueOnError - スクリプトの実行をエラー時に続行する必要がある場合は true public void setIgnoreFailedDrops(boolean ignoreFailedDrops)
DROP ステートメントを無視できることを示すフラグ。 これは、SQL ダイアレクトが DROP ステートメントの IF EXISTS 句をサポートしていない非埋め込みデータベースに役立ちます。
デフォルトは false であるため、ポピュレーターが誤って実行された場合、スクリプトが DROP ステートメントで開始すると、ポピュレーターはすぐに失敗します。
ignoreFailedDrops - 失敗したドロップステートメントを無視する必要がある場合は true public void populate(ConnectionSE connection) throws ScriptException
警告 : 具体的な実装では、提供されている ConnectionSE を閉じないでください。
具体的な実装では、エラーが発生した場合に SQLExceptionSE をスローすることがありますが、代わりに特定の ScriptException をスローすることを強くお勧めします。例: Spring の ResourceDatabasePopulator および DatabasePopulatorUtils は、すべての SQLExceptions を ScriptExceptions にラップします。
DatabasePopulator の populate connection - 使用する JDBC 接続。すでに構成され、使用する準備ができています。非 nullScriptException - 他のすべてのエラーの場合 execute(DataSource)public void execute(DataSourceSE dataSource) throws ScriptException
ResourceDatabasePopulator を指定された DataSourceSE に対して実行します。dataSource - 実行する DataSource (非 null)ScriptException - エラーが発生した場合 populate(Connection)