使用具体类或液体类来表示属性

时间:2013-11-20 10:43:36

标签: database oop database-design data-structures

我的意思是,像使用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概念有效?

1 个答案:

答案 0 :(得分:3)

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

如果您要对Entity–attribute–value_model这样的问题使用流动方法(logging other entities changes),那将是一个很好的方法。
如果EVA方法将应用于关系数据模型,JOIN不可避免地成为查询的一部分,那么使用EVA将是一种反模式。