Le mappage d'annotations JPA mappe les objets Java aux tables de base de données relationnelles, simplifiant ainsi l'interaction avec la base de données. Les annotations d'entité marquent les objets persistants (@Entity), les annotations de champ spécifient les mappages de colonnes de base de données (@Column, @Lob) et les annotations de mappage de relations représentent les relations entre les entités (@OneToOne, @OneToMany, @ManyToMany). Par exemple, dans les entités Employee et Department, @OneToOne représente une relation un-à-un et @OneToMany représente une relation un-à-plusieurs.
Mappage d'annotations dans l'API de persistance Java (JPA) : mappage objet-relationnel
L'API de persistance Java (JPA) fournit un moyen de mapper des objets Java à des tables de base de données relationnelles à l'aide d'annotations. Ce mappage est appelé mappage objet-relationnel (ORM) et simplifie le processus d'interaction avec la base de données.
Annotations d'entité
Les annotations d'entité sont utilisées pour marquer une classe Java afin d'indiquer qu'il s'agit d'un objet persistant. Les annotations d'entité couramment utilisées incluent :
@Entity
: indique qu'une classe est une entité JPA. @Entity
:指示一个类是 JPA 实体。@Id
:表示一个持久字段是实体的主键。字段注解
字段注解用于指定字段的数据库列映射。常用的字段注解包括:
@Column
:指定字段的数据库列名、类型和其他属性。@Lob
:指示字段是一个大对象(LOB),如文本或图像。关系映射注解
关系映射注解用于表示两个实体之间的关系。常用的关系映射注解包括:
@OneToOne
:一对一关系。@OneToMany
:一对多关系。@ManyToMany
:多对多关系。实战案例
假设我们有一个 Employee
实体和一个 Department
实体,它们具有以下关系:每个部门可以有多个员工,每个员工只能属于一个部门。
@Entity public class Employee { @Id private Long id; private String name; @OneToOne private Department department; } @Entity public class Department { @Id private Long id; private String name; @OneToMany(mappedBy = "department") private Set<Employee> employees; }
在前面的代码中,@OneToOne
注解指示 Employee
和 Department
之间存在一对一关系,一个员工对应一个部门。 @OneToMany
注解指示 Department
和 Employee
@Id
: Indique qu'un champ persistant est la clé primaire de l'entité.
@Column
: spécifiez le nom de la colonne de base de données, le type et d'autres attributs du champ. 🎜@Lob
: Indique que le champ est un objet volumineux (LOB), tel qu'un texte ou une image. 🎜🎜Annotation de mappage de relation🎜🎜🎜L'annotation de mappage de relation est utilisée pour représenter la relation entre deux entités. Les annotations de mappage de relations couramment utilisées incluent : 🎜🎜🎜@OneToOne
: relation un-à-un. 🎜@OneToMany
: relation un-à-plusieurs. 🎜@ManyToMany
: Relation plusieurs-à-plusieurs. 🎜🎜Cas pratique🎜🎜🎜Supposons que nous ayons une entité Employé
et une entité Département
, qui ont la relation suivante : Chaque département peut avoir Employés multiples, chaque employé ne peut appartenir qu’à un seul service. 🎜rrreee🎜Dans le code précédent, l'annotation @OneToOne
indique qu'il existe une relation un-à-un entre Employé
et Département
, et un employé correspond à un service . L'annotation @OneToMany
indique qu'il existe une relation un-à-plusieurs entre Département
et Employé
, un service correspondant à plusieurs employés. 🎜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!