我在试着模拟一家杂货店。商店里有几个“过道”。每个“过道”有一组“类别”的“物品”它存储。每个“类别”只能属于一个“过道”。每个“项目”只能有一个“类别”。
在我看来,数据模型似乎是直接的:
”类别的CATEGORY_ID的"item“表。
对象模型是我需要帮助的地方:
在每种情况下,一个项目在逻辑上都会有一个分类对象。对于每个域对象,我都有一个DAO,因此根据其完成的方式,sql略有变化。有什么想法吗?
发布于 2009-06-17 01:28:57
我投票赞成第二种选择,比第一种或第三种更合理。
你认为这种关系应该是双向的吗?一个项目是否需要知道它的父类和祖父母通道是谁?
发布于 2009-06-17 01:34:50
我会选择第二种选择。
过道的主要关注点是其中包含了哪些类别。应该由类别类来确定哪些项是成员。这使抽象级别在每个对象中保持一致--其中通道是较高级别的对象,类别是稍微详细的级别,项是最细的级别。
发布于 2009-06-17 01:37:53
如果只有3种选择,那么第2条就更有意义了。
我想,如果我要创建这个模型,我会使用以下模型(小小的修改,只是尽量接近您的想法):
一个过道对象可以有一个类别对象列表,一个类别对象可以在其中包含一个项目对象列表,和一个项目与一个类别和一个过道相关联。
我的修改似乎更多的是在数据方面。
我会这么做的原因是,有人说“嘿,我在找这个东西,它在哪个通道?”然而,使用您的数据模型,您将需要两个查找。
至少我是这么想的。
https://stackoverflow.com/questions/1004640
复制相似问题