Hibernate 多对一映射实时场景
Hibernate many to one mapping real time scenario
假设我们有一个只卖 3 种水果的水果商,他有 3 个 customers.How 是否会进行 hibernate 映射来跟踪交易?这是一个面试问题,我不确定如何处理多对一场景的交易?
假设:
一个水果只能买一个顾客,一个顾客可以买一个或多个水果。
在 Customer 实体中,您应该使用 @OneToMany 注释 List,在 Fruit 实体中,您应该使用 @ManyToOne 注释 Customer,这表明每个水果只能购买一个客户。
另一方面,如果您像这样观察水果对象,这很容易成为@ManyToMany 关系:
Table水果:
| fruit_id | name | count |
---------------------------
| 1 | apple | 100 |
| 2 | orange| 200 |
| 3 | peach | 300 |
并且你可以看出每个水果可以购买每个顾客,每个顾客可以购买每个水果。
加入 table 和 fruit_id 并且 customer_id 应该看起来像:
| fruit_id | customer_id|
-------------------------
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
| 2 | 1 |
| 2 | 2 |
| 2 | 3 |
假设我们有一个只卖 3 种水果的水果商,他有 3 个 customers.How 是否会进行 hibernate 映射来跟踪交易?这是一个面试问题,我不确定如何处理多对一场景的交易?
假设: 一个水果只能买一个顾客,一个顾客可以买一个或多个水果。
在 Customer 实体中,您应该使用 @OneToMany 注释 List,在 Fruit 实体中,您应该使用 @ManyToOne 注释 Customer,这表明每个水果只能购买一个客户。
另一方面,如果您像这样观察水果对象,这很容易成为@ManyToMany 关系: Table水果:
| fruit_id | name | count |
---------------------------
| 1 | apple | 100 |
| 2 | orange| 200 |
| 3 | peach | 300 |
并且你可以看出每个水果可以购买每个顾客,每个顾客可以购买每个水果。 加入 table 和 fruit_id 并且 customer_id 应该看起来像:
| fruit_id | customer_id|
-------------------------
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
| 2 | 1 |
| 2 | 2 |
| 2 | 3 |