Hibernate中哪个注解是用来配置相互关联查询的?
时间: 2024-02-25 09:59:27 浏览: 96
hibernate注解配置
5星 · 资源好评率100%
Hibernate 中,`@ManyToOne` 和 `@OneToMany` 注解是用来配置相互关联查询的。
`@ManyToOne` 注解用于定义多对一关系,表示一个实体类中的多个对象与另一个实体类中的一个对象相关联。该注解通常用于关系被维护方,用于指定关系维护方的外键列。例如:
```
@Entity
public class Order {
@Id
private Long id;
@ManyToOne
@JoinColumn(name = "customer_id")
private Customer customer;
// other fields
// getters and setters
}
```
在这个示例中,`Order` 实体类中的一个订单与 `Customer` 实体类中的一个客户相关联。我们使用 `@ManyToOne` 和 `@JoinColumn` 注解来定义多对一关系,并将外键列指定为 `customer_id`。
`@OneToMany` 注解用于定义一对多关系,表示一个实体类中的一个对象与另一个实体类中的多个对象相关联。该注解通常用于关系维护方,用于指定关系被维护方的外键列。例如:
```
@Entity
public class Customer {
@Id
private Long id;
@OneToMany(mappedBy = "customer")
private Set<Order> orders = new HashSet<>();
// other fields
// getters and setters
}
```
在这个示例中,`Customer` 实体类中的一个客户与 `Order` 实体类中的多个订单相关联。我们使用 `@OneToMany` 和 `mappedBy` 注解来定义一对多关系,并将关系维护方指定为 `customer` 属性。
阅读全文