我有两个具有一对多映射的表。订单:
+---+------------+-------------+
| | id | Name |
+---+------------+-------------+
| 1 | 1 | Order |
| 2 | 2 | Order |
| 3 | 3 | Order |
+---+------------+-------------+
和菜肴:
+---+------------+-------------+-------------+
| | id | Name | Order_id |
+---+------------+-------------+-------------+
| 1 | 1 | Dish | 1 |
| 2 | 2 | Dish | 1 |
| 3 | 3 | Dish | 1 |
+---+------------+-------------+-------------+
因此,在我的订单实体中,我设法将每个菜品 id 及其实体映射到一个 map 集合,但是有没有办法将每个 order_id 映射到:
Map<Integer, List<Dish>>
其中 Integer 是 order_id,列表中的每道菜都映射到它,或者还有其他方法吗?
最佳答案
不明白什么entity
您正在谈论但对于最终结果,您可以使用带有以下查询的联接:
Select distinct
t1.id, t2.name
from Orders t1
join Dishes t2
on t1.id = t2.order_id
Order by t1.id
现在将此结果保存在 ResultSet
中数据结构并放入Map<>
里面通过迭代resultset
.
关于java - 映射 list<Entity> hibernate 的 Map 集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54590109/