使用字段

时间:2015-09-27 09:59:32

标签: java mysql postgresql object uml

我正在开发一个小网站。数据库已创建,我们需要立即从sql创建对象。

通常,在"多对多"关系,我用一个列表来表示这种关系。 (食谱中的成分清单,如果需要,还有配料中的配方清单)。 但是我不知道当联结表包含字段时最好的方法是什么。

例如使用这些表:

######            ####################            ##########
RECIPE            INGREDIENT_IN_RECIPE            INGREDIENT
 id                  id_ingredient                  id
 name                id_recipe                      name
                     quantity
                     other

有没有一种从这个sql创建对象的最佳方法?

我不知道是否:

  • 我需要创建第三个对象" IngredientInRecipe"。并将其列在食谱/配料上?
  • 也许在成分中创建字段数量/其他只有在我想处理成分时才使用它#34; ingredientinrecipe"?
  • 或者用数量/其他来创建成分的子类?

也许我完全错了,我只需要在食谱中创建列表并使用sql查询或数组进行其他操作,但我有点迷失。

2 个答案:

答案 0 :(得分:1)

这是一个简单的关联类,你可以这样建模:

enter image description here

您使用单个表格的具体对象模型非常好。

答案 1 :(得分:0)

这里的答案是基于问题是INGREDIENT_IN_RECIPE一个实体本身,或者它只是一个关系表来创建数据库中的多对多。

目前,INGREDIENT_IN_RECIPE包含其他信息,这非常重要,并进一步指定了RECIPEINGREDIENT之间的关系,因此这使其成为合适的实体。

恕我直言,这里最好的方法是为INGREDIENT_IN_RECIPE表创建一个实体类,并至少在RECIPE实体类中列出它。您需要检查来自INGREDIENT实体的关系是否真的需要且有用。