繁体   English   中英

如何重写FetchType.EAGER在运行时变得懒惰

[英]How to override FetchType.EAGER to be lazy at runtime

使用JPA EntityManager和JPA Query对象,如何覆盖带有注释@OneToMany(fetch = FetchType.EAGER)的对象,以便在查询中延迟获取?

如果我有休眠的Query对象,则可以让它创建一个条件对象,并使用此对象将获取类型设置为惰性。 但是我必须使用JPA Query对象。 这个问题有什么解决办法吗?

即使使用本地Hibernate API,也无法做到这一点。 如果将关联定义为EAGER,则将始终加载该关联,并且无法使用查询更改该关联。

事实并非如此:您可以使用查询来急于加载一个懒惰的关联。

查看Hibernate Fetch配置文件或JPA实体图。 自您在2012年提出问题以来,此问题已解决。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM