小编gda*_*nov的帖子

JPA/Hibernate可以与其他持久性框架(如jOOQ)结合使用

我们有一个域,其中90%的类非常简单,并且可以在数据库中轻松地以1:1进行映射.我非常高兴Hibernate如何结合spring-data-jpa为这些类消除了大量的杂务.

然而,域的其余部分具有挑战性,并且出于多种原因我不想直接将其映射到DB表.

我做了实验来介绍由Hibernate管理的中间bean,并将这些bean映射到我的域,当所有关系从挑战到简单部分时,这都很有效.当我拥有Hibernate管理的"简单"类时,这种方法失败,它引用了在自定义Java代码中映射的"挑战"类,而不是直接管理hibernate.

这是当我意识到我找不到自定义Hibernate和插入某种ObjectFactory的方法时,它允许我在运行中进行这样的转换.

- 编辑 -

我的问题是:在使用JPA时,实体中具有零DB问题的DDD样式域层的最简单方法是什么?在DDD中,所有数据库问题都由存储库处理,存储库通常与DAO协作.

实体中的零DB关注意味着Domain类中没有JPA注释或映射配置.一种方法是让JPA(或其他持久性技术)管理映射到域实体的TO.如果我走这条路线但是我必须拥有我的所有实体,即使是最简单的实体(想想地址)也要通过映射层.

我想为普通实体使用像JPA这样的"懒惰",并能够将它们与"手动"管理的其他实体混合使用.目前我不知道允许我从JPA管理实体到非JPA管理实体的链接的聪明解决方案.我总是可以检索JPA实体,然后通过第二次调用检索非JPA实体,但是如果可能的话,我希望避免这种情况.

java orm hibernate jpa jooq

7
推荐指数
2
解决办法
1324
查看次数

标签 统计

hibernate ×1

java ×1

jooq ×1

jpa ×1

orm ×1