Maison  >  Article  >  Java  >  Comment les annotations mappent-elles les tables et les objets de la base de données dans Hibernate ?

Comment les annotations mappent-elles les tables et les objets de la base de données dans Hibernate ?

WBOY
WBOYoriginal
2024-05-06 16:48:011064parcourir

Hibernate utilise des annotations pour mapper les classes Java aux tables de base de données. Les étapes comprennent : l'ajout de dépendances, l'importation d'annotations, la création de classes d'entités et le mappage des propriétés. Par exemple, la classe d'entité utilisateur User est mappée à la table users et les colonnes id, username et password sont définies. Les annotations @Id, @GeneratedValue, @Table et @Column sont utilisées pour spécifier la clé primaire, la stratégie de génération de clé primaire, le nom de la table et les attributs de colonne. Ce mappage simplifie l'interaction entre les objets et la persistance, et Hibernate gère automatiquement la persistance et la récupération des objets.

Comment les annotations mappent-elles les tables et les objets de la base de données dans Hibernate ?

Comment les annotations mappent les tables et les objets de base de données dans Hibernate

Hibernate est un framework de mappage objet-relationnel (ORM) populaire qui utilise des annotations pour mapper les classes Java aux tables de base de données. Cela élimine le mappage manuel fastidieux et simplifie l'interaction entre les modèles et la persistance.

Étapes :

  1. Ajouter des dépendances Hibernate :

    <dependency>
     <groupId>org.hibernate</groupId>
     <artifactId>hibernate-core</artifactId>
     <version>5.6.4.Final</version>
    </dependency>
  2. Importer les annotations nécessaires :

    import javax.persistence.*;
  3. Créer une classe d'entité :

    @Entity
    @Table(name = "users")
    public class User {
    
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     private Long id;
    
     private String username;
     private String password;
    }
  4. Utilisez des annotations pour cartographier les propriétés :
  • @Id : Marquez le champ de clé primaire.
  • @GeneratedValue : Spécifiez la stratégie de génération de clé primaire.
  • @Table : Spécifiez le nom de la table.

Cas pratique :

Considérons une simple table user, qui contient les colonnes suivantes :

  • id : clé primaire à incrémentation automatique 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 已映射到数据库表 users

username : string 🎜🎜mot de passe : String 🎜🎜🎜🎜Code Java : 🎜🎜rrreee🎜🎜Table SQL : 🎜🎜rrreee🎜Maintenant, la classe d'entité Java Utilisateur est mappée à la base de données table utilisateurs. Hibernate peut gérer automatiquement la persistance et la récupération des objets dans la base de données. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn