プロバイダーとして休止状態を使用してjpa2によってマップされた〜10個のクラスで構成される小さなスキーマがあります。すべてのクラスは、同じ基本的な方法で構築されます (@Entity
クラスの注釈、 id@Id
および@GeneratedValue
)。すべてのクラスには、デフォルトのコンストラクターとデフォルトの getter/setter があります。
1 つを除くすべてのクラスは、(関連付けまたは継承を介して) 相互に関連しています。そして、この 1 つのクラスは、スキーマ生成プロセス中にデータベースに作成されたデータベース テーブルを取得しません。
で次の設定を試しましたhbm2ddl.auto
:
create : 1 つを除くすべてのテーブルが作成されます。エンティティに初めてアクセスすると、例外がスローされますcom.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table '...' doesn't exist
(または、コードが Oracle DB で実行されている場合は、Oracle に相当するもの)。
validate : hibernate は、スキーマの検証中に欠落しているテーブルについて不平を言います。
update : テーブルは作成されず、そのクラスのエンティティが最初にアクセスされたときに例外 (作成と同様) がスローされます。
誰かこれについて何か考えがありますか?