0
我对所有关系都使用了延迟加载,但出于性能原因,我想在1查询中使用1关联进行加载加载。急切地提取和过滤关联
我无法使用FETCH
关键字来强制加载此关联,因为我希望能够过滤此关联,并且规范不支持此关联。
实现这件事最简单的方法是什么?
我对所有关系都使用了延迟加载,但出于性能原因,我想在1查询中使用1关联进行加载加载。急切地提取和过滤关联
我无法使用FETCH
关键字来强制加载此关联,因为我希望能够过滤此关联,并且规范不支持此关联。
实现这件事最简单的方法是什么?
您可以使用不同的联接为过滤:
select u from User u
left join fetch u.address fetchedAddress
inner join u.address filteredAddress
where filteredAddress.street = :street
我不能这样做,因为一个实体可以有成千上万的相关实体。这就是为什么我要过滤那些 – zootropo
所以,你的意思是你想让JPA加载只有一些地址的用户?这正是规范所禁止的。您应该加载地址,并从加载的地址获取用户。 –