hibernet有哪些抓取策略?

来源:百度知道 编辑:UC知道 时间:2024/06/16 23:26:54

单端代理的批量抓取
保持<many-to-one>中的fetch属性默认,也即是fetch="select"
fetch="select",会另外发送一条sql语句加载当前对象的关联实体

单端代理的批量抓取
设置<many-to-one>中的fetch="join"
fetch="join",hibernate会使用一个外连接该对象的关联实体
会导致lazy失效

集合代理的批量抓取
保持<set>中的fetch属性默认,也即是fetch="select"
fetch="select",会另外发送一条sql语句加载当前对象的关联实体或集合

集合代理的批量抓取
设置<set>中的fetch=join
fetch="join",hibernate会使用一个外连接该对象的关联实体
会导致lazy失效

集合代理的批量抓取
设置<set>中的fetch=subselect
fetch="subselect",另外发送一条select语句抓取前面查询到的所有实体对象的关联集合