クラス ResourceDatabasePopulator

java.lang.ObjectSE
org.springframework.jdbc.datasource.init.ResourceDatabasePopulator
実装されたすべてのインターフェース:
DatabasePopulator

public class ResourceDatabasePopulator extends ObjectSE implements DatabasePopulator
外部リソースで定義された SQL スクリプトを使用して、データベースにデータを入力、初期化、クリーンアップします。
導入:
3.0
作成者:
Keith Donald, Dave Syer, Juergen Hoeller, Chris Beams, Oliver Gierke, Sam Brannen, Chris Baldwin, Phillip Webb
関連事項:
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    デフォルト設定で新しい ResourceDatabasePopulator を構築します。
    ResourceDatabasePopulator(boolean continueOnError, boolean ignoreFailedDrops, StringSE sqlScriptEncoding, Resource... scripts)
    指定された値で新しい ResourceDatabasePopulator を構築します。
    提供されたスクリプトのデフォルト設定で新しい ResourceDatabasePopulator を構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    データベースを初期化またはクリーンアップするために実行するスクリプトを追加します。
    void
    addScripts(Resource... scripts)
    データベースを初期化またはクリーンアップするために実行する複数のスクリプトを追加します。
    void
    execute(DataSourceSE dataSource)
    この ResourceDatabasePopulator を指定された DataSourceSE に対して実行します。
    void
    提供された 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
    カスタムの場合は、ステートメントの区切り記号を指定します。
    void
    setSqlScriptEncoding(StringSE sqlScriptEncoding)
    構成された SQL スクリプトのエンコードを指定します(プラットフォームのエンコードと異なる場合)。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • コンストラクターの詳細

    • ResourceDatabasePopulator

      public ResourceDatabasePopulator()
      デフォルト設定で新しい ResourceDatabasePopulator を構築します。
      導入:
      4.0.3
    • ResourceDatabasePopulator

      public ResourceDatabasePopulator(Resource... scripts)
      提供されたスクリプトのデフォルト設定で新しい ResourceDatabasePopulator を構築します。
      パラメーター:
      scripts - データベースを初期化またはクリーンアップするために実行するスクリプト (非 null)
      導入:
      4.0.3
    • ResourceDatabasePopulator

      public ResourceDatabasePopulator(boolean continueOnError, boolean ignoreFailedDrops, @Nullable StringSE sqlScriptEncoding, Resource... scripts)
      指定された値で新しい ResourceDatabasePopulator を構築します。
      パラメーター:
      continueOnError - SQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグ
      ignoreFailedDrops - 失敗した SQL DROP ステートメントを無視できることを示すフラグ
      sqlScriptEncoding - 提供された SQL スクリプトのエンコーディング (null またはプラットフォームのエンコーディングを示す空の場合があります)
      scripts - データベースを初期化またはクリーンアップするために実行するスクリプト (非 null)
      導入:
      4.0.3
  • メソッドの詳細

    • addScript

      public void addScript(Resource script)
      データベースを初期化またはクリーンアップするために実行するスクリプトを追加します。
      パラメーター:
      script - SQL スクリプトへのパス (非 null)
    • addScripts

      public void addScripts(Resource... scripts)
      データベースを初期化またはクリーンアップするために実行する複数のスクリプトを追加します。
      パラメーター:
      scripts - 実行するスクリプト (非 null)
    • setScripts

      public void setScripts(Resource... scripts)
      実行するスクリプトを設定して、データベースを初期化またはクリーンアップし、以前に追加したスクリプトを置き換えます。
      パラメーター:
      scripts - 実行するスクリプト (非 null)
    • setSqlScriptEncoding

      public void setSqlScriptEncoding(@Nullable StringSE sqlScriptEncoding)
      構成された SQL スクリプトのエンコードを指定します(プラットフォームのエンコードと異なる場合)。
      パラメーター:
      sqlScriptEncoding - スクリプトで使用されるエンコーディング (null またはプラットフォームのエンコーディングを示す空の場合があります)
      関連事項:
    • setSeparator

      public void setSeparator(StringSE separator)
      カスタムの場合は、ステートメントの区切り記号を指定します。

      指定しない場合はデフォルトで ";" になり、最後の手段として "\n" にフォールバックします。ScriptUtils.EOF_STATEMENT_SEPARATOR に設定すると、各スクリプトに区切り文字のない単一のステートメントが含まれることを通知できます。

      パラメーター:
      separator - スクリプトステートメントセパレーター
    • setCommentPrefix

      public void setCommentPrefix(StringSE commentPrefix)
      SQL スクリプト内の単一行コメントを識別する接頭辞を設定します。

      デフォルトは "--" です。

      パラメーター:
      commentPrefix - 単一行コメントの接頭辞
      関連事項:
    • setCommentPrefixes

      public void setCommentPrefixes(StringSE... commentPrefixes)
      SQL スクリプト内の単一行コメントを識別するプレフィックスを設定します。

      デフォルトは ["--"] です。

      パラメーター:
      commentPrefixes - 単一行コメントの接頭辞
      導入:
      5.2
    • setBlockCommentStartDelimiter

      public void setBlockCommentStartDelimiter(StringSE blockCommentStartDelimiter)
      SQL スクリプト内のブロックコメントを識別する開始区切り文字を設定します。

      デフォルトは "/*" です。

      パラメーター:
      blockCommentStartDelimiter - ブロックコメントの開始区切り文字 (null または空ではありません)
      導入:
      4.0.3
      関連事項:
    • setBlockCommentEndDelimiter

      public void setBlockCommentEndDelimiter(StringSE blockCommentEndDelimiter)
      SQL スクリプト内のブロックコメントを識別する終了区切り文字を設定します。

      デフォルトは "*/" です。

      パラメーター:
      blockCommentEndDelimiter - ブロックコメントの終了区切り文字 (null または空ではありません)
      導入:
      4.0.3
      関連事項:
    • setContinueOnError

      public void setContinueOnError(boolean continueOnError)
      SQL のすべての失敗をログに記録する必要があるが、失敗の原因にはならないことを示すフラグ。

      デフォルトは false です。

      パラメーター:
      continueOnError - スクリプトの実行をエラー時に続行する必要がある場合は true 
    • setIgnoreFailedDrops

      public void setIgnoreFailedDrops(boolean ignoreFailedDrops)
      失敗した SQL DROP ステートメントを無視できることを示すフラグ。

      これは、SQL ダイアレクトが DROP ステートメントの IF EXISTS 句をサポートしていない非埋め込みデータベースに役立ちます。

      デフォルトは false であるため、ポピュレーターが誤って実行された場合、スクリプトが DROP ステートメントで開始すると、ポピュレーターはすぐに失敗します。

      パラメーター:
      ignoreFailedDrops - 失敗したドロップステートメントを無視する必要がある場合は true 
    • populate

      public void populate(ConnectionSE connection) throws ScriptException
      提供された JDBC 接続を使用して、データベースにデータを入力、初期化、クリーンアップします。

      警告 : 具体的な実装では、提供されている ConnectionSE を閉じないでください。

      具体的な実装で、エラーが発生した場合に SQLExceptionSE をスローすることがありますが、代わりに特定の ScriptException をスローすること強くお勧めします。例: Spring の ResourceDatabasePopulator および DatabasePopulatorUtils は、すべての SQLExceptions を ScriptExceptions にラップします。

      次で指定:
      インターフェース DatabasePopulatorpopulate 
      パラメーター:
      connection - 使用する JDBC 接続。すでに構成され、使用する準備ができています。非 null
      例外:
      ScriptException - 他のすべてのエラーの場合
      関連事項:
    • execute

      public void execute(DataSourceSE dataSource) throws ScriptException
      この ResourceDatabasePopulator を指定された DataSourceSE に対して実行します。

      DatabasePopulatorUtils.execute(org.springframework.jdbc.datasource.init.DatabasePopulator, javax.sql.DataSource) へのデリゲート。

      パラメーター:
      dataSource - 実行する DataSource (非 null)
      例外:
      ScriptException - エラーが発生した場合
      導入:
      4.1
      関連事項: