为了有效地将我的域模型中的实体映射到数据库表,我应遵循哪些规则?
数据库列是否应与域类属性对齐?
例如,我有一个 数据库表
Person {(varchar)FirstName, (varchar)LastName, int(age)}
域类
class Person(){
String firstName;
String lastName;
int age;
}
答案 0 :(得分:1)
对象关系映射有很多策略。最终,您必须在某个字段中表示每个持久数据,因此您的策略将起作用。您需要回答的其他问题:
1)您的记录是如何键入的?你是否会为每个班级都有一个唯一的ID字段?
2)你将如何处理继承?如果你有一个引入附加字段的PersonA(Person)类,你会为Person + PersonA中的每个字段创建一个全新的表,还是只为其他字段创建一个PersonA表?
3)您打算如何构建针对数据库的查询?你打算提供某种形式的对象查询映射吗?
有许多开源ORM,所以除非你为研究项目做这个,否则我建议你使用其中一个。