ホームページ  >  記事  >  Java  >  Hibernate でアノテーションはデータベース テーブルとオブジェクトをどのようにマップしますか?

Hibernate でアノテーションはデータベース テーブルとオブジェクトをどのようにマップしますか?

WBOY
WBOYオリジナル
2024-05-06 16:48:011063ブラウズ

Hibernate はアノテーションを使用して Java クラスをデータベース テーブルにマップします。その手順には、依存関係の追加、アノテーションのインポート、エンティティ クラスの作成、およびプロパティのマッピングが含まれます。たとえば、ユーザー エンティティ クラス User は users テーブルにマップされ、id、ユーザー名、およびパスワード列が定義されます。注釈 @Id、@GeneratedValue、@Table、および @Column は、主キー、主キー生成戦略、テーブル名、および列属性を指定するために使用されます。このマッピングにより、オブジェクトと永続性の間の対話が簡素化され、Hibernate はオブジェクトの永続性と取得を自動的に処理します。

Hibernate でアノテーションはデータベース テーブルとオブジェクトをどのようにマップしますか?

Hibernate でアノテーションがデータベース テーブルとオブジェクトをマップする方法

Hibernate は、アノテーションを使用して Java クラスをデータベース テーブルにマップする一般的なオブジェクト リレーショナル マッピング (ORM) フレームワークです。これにより、面倒な手動マッピングが不要になり、モデルと永続性の間の相互作用が簡素化されます。

手順:

  1. Hibernateの依存関係を追加する:

    <dependency>
     <groupId>org.hibernate</groupId>
     <artifactId>hibernate-core</artifactId>
     <version>5.6.4.Final</version>
    </dependency>

  2. 必要なアノテーションをインポートする:

    import javax.persistence.*;

  3. エンティティクラスを作成する:

    @Entity
    @Table(name = "users")
    public class User {
    
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     private Long id;
    
     private String username;
     private String password;
    }

  4. 注釈を使用してプロパティをマップします:
  • @Id: 主キーフィールドをマークします。
  • @GeneratedValue: 主キー生成戦略を指定します。
  • @Table: テーブル名を指定します。

実際のケース:

次の列を含む単純なユーザーテーブルを考えてみましょう:

    id: 自動インクリメント主キー
  • id:自增主键
  • username:字符串
  • password:字符串

Java 代码:

@Entity
@Table(name = "users")
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "username", nullable = false, length = 50)
    private String username;

    @Column(name = "password", nullable = false, length = 100)
    private String password;
}

SQL 表:

CREATE TABLE users (
    id INT NOT NULL AUTO_INCREMENT,
    username VARCHAR(50) NOT NULL,
    password VARCHAR(100) NOT NULL,
    PRIMARY KEY (id)
);

现在,Java 实体类 User 已映射到数据库表 usersusername: string

🎜password: String 🎜🎜🎜🎜Java code: 🎜🎜rrreee🎜🎜SQL table: 🎜🎜rrreee🎜これで、Java エンティティ クラス User がデータベースにマッピングされますテーブルユーザー。 Hibernate は、データベースへのオブジェクトの永続化と取得を自動的に処理できます。 🎜

以上がHibernate でアノテーションはデータベース テーブルとオブジェクトをどのようにマップしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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