休眠实体-域映射

时间:2019-05-22 11:13:21

标签: java hibernate

将用于实体域转换的映射代码直接添加到休眠实体是一个好主意吗?

@Entity
public MyEntity {
    ...

    MyDomain toDomain {...}

    MyEntity toEntity(MyDomain myDomain) { ... }
}

如果这不是一个好主意,那为什么还要在哪里放置映射代码呢?

1 个答案:

答案 0 :(得分:3)

答案是YESNO,具体取决于转换。

YES-如果从一个方法到另一个方法的转换很简单,并且不涉及复杂的逻辑,则可以将这些方法放在实体类中。完全与这个问题无关,但在类似的情况下,kotlin具有针对此类情况的扩展功能-extension function for Kotlin data class

NO-如果转换需要一些复杂的逻辑,最好将其置于实体之外,这样可以更容易地独立测试转换。

话虽如此,您的问题没有正确或错误的答案。您可以根据自己的情况进行选择。