JPA:何时使用ManyToOne关系与价值?

时间:2011-06-14 08:12:38

标签: database-design jpa jpa-2.0

我是JPA的新手,这个问题是关于推荐使用JPA关系的方法。

我有实体Data和Subject,我可以在它们之间创建一个ManyToOne关系。什么是更好的方法?

没有关系:

class Data{
 String id;
 String subject;
}

class Subject{
 String id;
 String name;
}

有关系:

class Data{
 String id;
 @ManyToOne
 Subject subject;
}

class Subject{
 String id;
 String name;
}

似乎没有ManyToOne关系我执行的操作较少:每次添加Data实体时都不应该获取Subject实体,我可以编写添加/更新/删除数据的简单查询。

另一方面,ManyToOne验证Data.subject获取正确的值并解释实体之间的关系,并且“免费”获得主题和相关数据的几个查询。

什么是更好的方法? 感谢。

1 个答案:

答案 0 :(得分:1)

jpa / orm的最大优点是,您可以直接访问对象。因此,您应该选择@ ManyToOne-Anotation的示例。

如果您担心对数据库执行的操作,“延迟加载”将是您的朋友。

致以最诚挚的问候,

克里斯