【发布时间】:2015-08-28 21:25:44
【问题描述】:
在我的 Java 应用程序中,我试图尽可能严格地分离业务模型和持久性模型。所以我有一组由 Hibernate + Spring Data 支持的持久性级别的实体,具有关系、级联、延迟加载和其他功能。 但后来我有了一个业务模型,作为一组不同的实体,它们以某种方式映射到持久性实体上。
只要 Hibernate 不知道这个级别,就不会在那里延迟加载。 我该怎么做?是否有解决方案或常见/更好的做法来实现延迟加载而不在业务级别存储外部密钥(和其他持久性内容)?
我的目标是让业务和持久性之间的联系尽可能柔和。我明白,一旦我转向实体关系和从业务级别开始的数据库加载,这些级别将相互绑定。但是有没有办法最小化依赖呢?
附:我确实需要延迟加载本身,以任何可能的方式。
【问题讨论】:
-
如果业务层的实体映射到持久层的实体,只在持久层有延迟加载还不够吗?
标签: java architecture persistence lazy-loading