【问题标题】:Using concrete classes or liquid classes for attributes使用具体类或液体类作为属性
【发布时间】:2013-11-20 10:43:36
【问题描述】:

我的意思是,像具有 Attribute.java 这样的流动类

String name;
Object Value;
Long entityId;

并像这样实现 User.java:

Set<Attribute> attributes;
Long id;

或 User.java 的具体类实现

String realName;
String displayedName;
Int score;    
Long id;

数据库概念和OOP概念哪个有效?

【问题讨论】:

    标签: database oop database-design data-structures


    【解决方案1】:

    这取决于您要解决的问题域。

    如果您打算在 logging other entities changes 之类的问题上使用液体方法 (Entity–attribute–value_model),那将是一个好方法。
    如果 EVA 方法将应用于关系数据模型,而 JOIN 是查询不可避免的一部分,那么使用 EVA 将是一种反模式。

    【讨论】:

      猜你喜欢
      • 2022-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-17
      • 2023-03-31
      • 2012-07-09
      • 2022-12-23
      • 1970-01-01
      相关资源
      最近更新 更多