将用于实体域转换的映射代码直接添加到休眠实体是一个好主意吗?
@Entity
public MyEntity {
...
MyDomain toDomain {...}
MyEntity toEntity(MyDomain myDomain) { ... }
}
如果这不是一个好主意,那为什么还要在哪里放置映射代码呢?
答案 0 :(得分:3)
答案是YES
和NO
,具体取决于转换。
YES
-如果从一个方法到另一个方法的转换很简单,并且不涉及复杂的逻辑,则可以将这些方法放在实体类中。完全与这个问题无关,但在类似的情况下,kotlin具有针对此类情况的扩展功能-extension function for Kotlin data class
NO
-如果转换需要一些复杂的逻辑,最好将其置于实体之外,这样可以更容易地独立测试转换。
话虽如此,您的问题没有正确或错误的答案。您可以根据自己的情况进行选择。