ホームページ >データベース >mysql チュートリアル >Hibernate がエンティティ クラスからデータベース テーブルを自動的に作成または更新するにはどうすればよいですか?

Hibernate がエンティティ クラスからデータベース テーブルを自動的に作成または更新するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-06 19:07:13533ブラウズ

How Can Hibernate Automatically Create or Update Database Tables from Entity Classes?

Hibernate エンティティ クラスを使用したデータベース テーブルの自動作成または更新

質問:

自動的に作成されるように Hibernate を設定するにはどうすればよいですか?または、定義されたエンティティに基づいてデータベーステーブルを更新しますclass?

Context:

エンティティ クラス ServerNode を作成し、persistence.xml で永続化ユニットを定義しました。 ServerNode のインスタンスを永続化するスクリプトもあります。ただし、ターゲット データベースにはまだテーブルが含まれていません。

解決策:

Hibernate の自動テーブル作成または更新を有効にするには、次の手順に従います。

  1. persistence.xml ファイルで、プロパティを見つけます。 hibernate.hbm2ddl.auto.

    例:

    <property name="hibernate.hbm2ddl.auto" value="create" />
  2. hibernate.hbm2ddl.auto の値を次のいずれかに設定します:

    • create: 中にテーブルを作成しますsessionFactory を作成し、そのまま残します。
    • create-drop: sessionFactory の作成中にテーブルを作成し、sessionFactory が閉じるときにテーブルを削除します。
  3. (オプション) テーブル名を明示的に指定するには、javax.persistence.Table アノテーションを使用します。エンティティ クラス内。

    例:

    @Entity
    @Table(name = "ServerNodes")
    public class ServerNode {
        // ...
    }

以上がHibernate がエンティティ クラスからデータベース テーブルを自動的に作成または更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。