スキーマ生成を設定するために、persistence.xml ファイルで EclipseLink JPA 永続性ユニット プロパティを定義できます。
JPA エンティティに対して使用するデータ定義言語(DDL)生成アクションを指定します。 DDL 生成ターゲットを指定するには、「eclipselink.ddl-generation.output-mode」を参照してください。
値
persistence.xml ファイルでは以下の値を使用できます。
以下の値が org.eclipse.persistence.config.PersistenceUnitProperties に対して有効です。
Java SE 環境で永続性を使用する場合で、テーブルを作成することなく DDL ファイルを作成する場合は、Java システム プロパティ INTERACT_WITH_DB を定義し、その値を false に設定します。
デフォルト: 以下のいずれかです。
例:
persistence.xml file<property value="create-tables"/>例: property Mapimport org.eclipse.persistence.config.PersistenceUnitProperties;propertiesMap.put(PersistenceUnitProperties.DDL_GENERATION, PersistenceUnitProperties.CREATE_ONLY);
EclipseLink が、生成された DDL ファイルを書き込む場所を指定します。 eclipselink.ddl-generation を none 以外に設定すると、ファイルが書き込まれます。
値: ユーザが書き込みアクセス権を持つディレクトリへのファイル指定。 ファイル指定は、現在の作業ディレクトリに対して相対的に指定するか、または絶対的に指定できます。 ファイル区切り記号で終了していない場合、EclipseLink は、お使いのオペレーティング システムで有効な区切り記号を追加します。
デフォルト: 以下のいずれかです。
"."+File.separator
または
<tt>PersistenceUnitProperties.DEFAULT_APP_LOCATION</tt>
例:
persistence.xml file<property value="C:\ddl\"/>例: property Mapimport org.eclipse.persistence.config.PersistenceUnitProperties;propertiesMap.put(PersistenceUnitProperties.APP_LOCATION, "C:\ddl\");
EclipseLink が生成する DDL ファイルのファイル名を指定します。このファイルには、JPA エンティティ用のテーブルを作成するための SQL ステートメントが含まれます。 eclipselink.ddl-generation に create-tables または drop-and-create-tables が設定されている場合、このファイルは、eclipselink.application-location によって指定されている場所に書き込まれます。
有効な値: お使いのオペレーティング システムで有効なファイル名。 eclipselink.application-location + eclipselink.create-ddl-jdbc-file-name の連結が、お使いのオペレーティング システムで有効なファイル指定の場合、必要に応じて、ファイル名の前にファイル パスを付けます。
例:
persistence.xml file<property value="create.sql"/>例: property Mapimport org.eclipse.persistence.config.PersistenceUnitProperties;propertiesMap.put(PersistenceUnitProperties.CREATE_JDBC_DDL_FILE, "create.sql");
デフォルト値: createDDL.jdbc または PersistenceUnitProperties.DEFAULT_CREATE_JDBC_FILE_NAME
EclipseLink が生成する DDL ファイルのファイル名を指定します。このファイルには、JPA エンティティ用のテーブルをドロップするための SQL ステートメントが含まれます。 eclipselink.ddl-generation に drop-and-create-tables が設定されている場合、このファイルは、eclipselink.application-location によって指定されている場所に書き込まれます。
有効な値: お使いのオペレーティング システムで有効なファイル名。 eclipselink.application-location + eclipselink.drop-ddl-jdbc-file-name の連結が、お使いのオペレーティング システムで有効なファイル指定の場合、ファイル名の前にファイル パスを付けることができます。
例:
persistence.xml file<property value="drop.sql"/>例: property Mapimport org.eclipse.persistence.config.PersistenceUnitProperties;propertiesMap.put(PersistenceUnitProperties.DROP_JDBC_DDL_FILE, "drop.sql");
デフォルト値: dropDDL.jdbc または PersistenceUnitProperties.DEFAULT_DROP_JDBC_FILE_NAME
DDL 生成ターゲットを指定するには、このプロパティを使用します。
有効な値:
persistence.xml ファイルで使用される有効な値は以下のとおりです。
SQL ファイルを生成し、データベースに対して実行します。
eclipselink.ddl-generation に「create-tables」が設定されている場合、eclipselink.create-ddl-jdbc-file-name が eclipselink.application-location に書き込まれ、データベースに対して実行されます。
eclipselink.ddl-generation に「drop-and-create-tables」が設定されている場合、eclipselink.create-ddl-jdbc-file-name と eclipselink.drop-ddl-jdbc-file-name が eclipselink.application-location に書き込まれます。 両方の SQL ファイルがデータベースに対して実行されます。
データベースに対してのみ SQL を実行します(SQL ファイルを生成しません)。
SQL ファイルの生成のみ行います(データベースに対して実行しません)。
eclipselink.ddl-generation に「create-tables」が設定されている場合、eclipselink.create-ddl-jdbc-file-name が eclipselink.application-location に書き込まれます。 コマンドはデータベースに対して実行されません。
eclipselink.ddl-generation に「drop-and-create-tables」が設定されている場合、eclipselink.create-ddl-jdbc-file-name と eclipselink.drop-ddl-jdbc-file-name が eclipselink.application-location に書き込まれます。 どちらもデータベースに対して実行されません。 以下の値が org.eclipse.persistence.config.PersistenceUnitProperties に対して有効です。
例:
persistence.xml file<property value="database"/>例: property Mapimport org.eclipse.persistence.config.PersistenceUnitProperties;propertiesMap.put(PersistenceUnitProperties.DDL_GENERATION_MODE, PersistenceUnitProperties.DDL_DATABASE_GENERATION);
コンテナまたは Java EE モードのデフォルトは {{database}} です。
注: この設定は、コンテナと特定の EclipseLink サポートによって上書きされます。 詳細については、コンテナのドキュメントを参照してください。 ブートストラップまたは Java SE モード: both または PersistenceUnitProperties.DDL_BOTH_GENERATION。
|
Copyright © 2014 CA Technologies.
All rights reserved.
|
|