内连接和内连接获取有什么区别?,HQL

use*_*519 4 hibernate hql

我在HQL查询中有这个疑问

"SELECT c from Account c inner join c.person " 
"SELECT c from Account c inner join fetch c.person"
Run Code Online (Sandbox Code Playgroud)

是否相等?...什么时候可以使用fetch

提前致谢。

Koi*_*oer 6

Fetch join 允许快速加载集合,它通常用于涉及集合的关系。这是一种急切地检索所有记录的方法,以避免在会话关闭或将对象移动到视图时出现任何问题。

获取连接


Zeu*_*eus 5

Koitoer所说的是正确的

另外,在你的Account person中通常设置为延迟加载,即使你在HQL中加入它,集合person也可能不会加载,你必须使用'fetch'来加载它们。