我应该在JPA创建/编辑时返回托管对象

时间:2011-01-07 17:05:18

标签: java jpa

我遇到过一种情况,我在JPA中持有Entity对象,然后必须查看是否有另一个对象.equals()

然而,测试失败了,因为第一个对象只是一个POJO,而第二个对象是它的托管等价物。

作为JPA创建或编辑操作的结果,返回新管理的实体对象是一种好习惯吗?

此致 劳伦斯

2 个答案:

答案 0 :(得分:1)

您可以使用构成对象业务键的字段覆盖hashCode()equals(..)方法。 See this article

答案 1 :(得分:0)

你有两种类型?一个POJO,实际上是一个DTO和一个注释的POJO管理?你能编写一个equals方法,还是制作一个让人不惊讶的比较方法?

这涉及到关于“平等”意味着什么的各种有趣的问题。我的机构是提供hasTheSameValueAs()方法。

要直接回答您的问题,有时候返回托管对象似乎非常方便。