Hibernate:实体字段懒集

时间:2018-04-11 11:20:23

标签: java spring hibernate

我想知道是否有可能对实体进行延迟设置。考虑一下这段代码:

__ge__

在幕后,我们有一个名为Bar和BarRepository的实体。现在我不想从它的回购中取出Bar。我想只使用我的barId参数,不要用另一个fetch麻烦我的数据库。这甚至可行吗?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:

@Component
public class FooAssembler{
       @PersistenceContext
       private EntityManager em;

       public Foo toFoo(Long barId){
          return new Foo(em.getReference(Bar.class, barId))
       }
}

感谢EntityManager我能够创建一个代理(就像Hibernate一样),我可以使用它而不是获取真实实体。