Many 一端
|
One 一端:
|
测试查询语句:
|
发现 hibernate向数据库发送的语句都是:
|
怎么会没有区别呢? 文档上好像说 join的方式效率高一些,但是是否取子表的数据不是由 lazy参数决定的么,和 fetch 参数有什么关系?
|
|
测试查询语句:
|
|
在配置中使用fetch=“join” ,Hibernate将在同一个select中返回关联子对象或集合,能够利用Oracle 或 Sybase类型outer joins能够提高性能
fetch=“select” ,这表示Hibernate将在第二个SELECT中获取关联方实体或集合,除非你显式地实现lazy fetching (lazy=“false”)。
简单说:join是一条SQL完成, select是分两次SQL完成.