通过JPA将Java HashMap作为MySQL中的一个元素

通过JPA将Java HashMap作为MySQL中的一个元素,java,mysql,jpa,hashmap,Java,Mysql,Jpa,Hashmap,我已经问过这个问题,但没有得到直接的回答: 这个MySQL数据库有三个表:mean、component和IngredientListAndAmount。deal中的每一行都对应于IngredientListAndAmount中的一行IngredientListAndAmount可以存储为Java HashMap,其中成分ID是键,整数是值 我如何在MySQL数据库中表示这种依赖关系?您寻求的通常称为连接表。这就是SQL如何表示两个实体之间的多对多关系。连接表A和B的最纯粹的纯联接表由两列组成,

我已经问过这个问题,但没有得到直接的回答:

这个MySQL数据库有三个表:
mean
component
IngredientListAndAmount
deal
中的每一行都对应于
IngredientListAndAmount
中的一行
IngredientListAndAmount
可以存储为Java HashMap,其中
成分
ID是键,整数是值


我如何在MySQL数据库中表示这种依赖关系?

您寻求的通常称为连接表。这就是SQL如何表示两个实体之间的多对多关系。连接表A和B的最纯粹的纯联接表由两列组成,一列包含一个_id,另一列包含一个_id。这两列共同构成联接表的主键

在本例中,联接表中有三列:

 Meal_id        pk, fk to Meal table
 Ingredient_id  pk, fk to Ingredient table
 Amount         something giving the amount
如果您想要某顿饭的配料,可以使用如下查询:

SELECT m.Mealname, i.IngredientName, mi.Amount
  FROM Meal AS m
  JOIN MealIngredient AS mi ON m.Meal_id = mi.Meal_id
  JOIN Ingredient AS i ON mi.Ingredient_id = i.Ingredient_id

显示如何在数据库中定义类。谢谢。如果我知道配料的话,我真的需要一顿饭