在使用Hibernate进行数据库映射时,我们经常会遇到需要处理实体之间的关系的情况。@ManyToOne和@OneToMany是两个常用的注解,用于定义实体之间的多对一和一对多关系。本文将介绍如何在MySQL数据库中使用这两个注解,并提供相应的源代码示例。
- 创建数据库表
首先,我们需要创建两个数据库表,分别表示多对一和一对多关系的两个实体。
对于多对一关系,我们以订单(Order)和客户(Customer)为例。一个客户可以有多个订单,而一个订单只属于一个客户。以下是创建表的SQL语句:
CREATE TABLE customer (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL
);
CREATE TABLE order (
id INT PRIMARY KEY AUTO_INCREMENT,
order_number VARCHAR(100) NOT NULL,
customer_id INT,
FOREIGN KEY (customer_id) REFERENCES customer(id)
);
对于一对多关系,我们以部门(Department)和员工(Employee)为例。一个部门可以有多个员工,而一个员工只属于一个部门。以下是创建表的SQL语句:
CREATE TABLE department (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL
);
CREATE TA