Hibernate中的多表查询及抓取策略

Hibernate中的多表查询及抓取策略

ID:47359769

大小:32.50 KB

页数:4页

时间:2019-08-04

Hibernate中的多表查询及抓取策略_第1页
Hibernate中的多表查询及抓取策略_第2页
Hibernate中的多表查询及抓取策略_第3页
Hibernate中的多表查询及抓取策略_第4页
资源描述:

《Hibernate中的多表查询及抓取策略》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Hibernate中的多表查询及抓取策略一、Hibernate中的多表查询1、SQL中的多表查询【交叉连接】select*fromA,B;【内连接】显示内连接:innerjoin(inner可以省略)Select*fromAinnerjoinBon条件;隐式内连接:Select*fromA,Bwhere条件;【外连接】左外连接:leftouterjoinSelect*fromAleftouterjoinBon条件;右外连接:rightouterjoinSelect*fromArightouterjoin

2、Bon条件;2、Hibernate中的多表连接查询【交叉连接】交叉连接【内连接】显示内连接fromCustomercinnerjoinc.linkmans隐式内连接迫切内连接fromCustomercinnerjoinfetchc.linkmans【外连接】左外连接右外连接迫切左外连接二、Hibernate中的抓取策略1、延迟加载lazylazy延迟加载:查询的时候不发送sql语句,在使用对象的时候才发送sql语句查询延迟加载氛围类级别的延迟加载和关联级别的延迟加载1)类级别的延迟加载使用延迟加载的方法

3、查询某个类的时候是否采用的延迟称为是类级别的延迟。默认值是true。Customercustomer=session.load(Customer.class,1l);//默认就会采用延迟加载,这种称为是类级别的延迟。类级别延迟加载失效:*final修饰这个类,不能产生代理类,延迟加载就会失效。*在上配置lazy=”false”2)关联级别的延迟加载查询到某个对象以后,获得其关联的对象。查询其关联对象的时候是否采用的延迟。称为是关联级别的延迟。Customerc=session.get(Cu

4、stomer.class,1l);c.getLinkMans();//查询关联对象的时候,是否采用延迟加载。关联级别的延迟往往会与抓取策略一起使用,优化程序。(关联级别的延迟在或者是标签上的延迟加载)2、抓取策略抓取策略指的是查找到某个对象后,抓取其关联的对象的时候采用的策略。抓取策略就是在关联对象的配置上()配置fetch属性。1)在set上配置的lazy和fetchfetch:抓取策略,控制SQL语句的发送的格式。   * s

5、elect   :默认值。发送一条select语句查询关联对象。   *join :发送一条迫切左外连接查询关联对象。   *subselect:发送一条子查询查询关联对象。 lazy:延迟加载,控制SQL语句的发送的时候。    *true :默认值。采用延迟加载。   *false:不采用延迟加载。   *extra:及其懒惰。2)在many-to-one上配置的lazy和fetchfetch:抓取策略,控制SQL语句的发送的格式。   *select   :默认值.发送一条select语句查询关联

6、对象。   *join :发送一条迫切左外连接查询关联对象。lazy:延迟加载,控制SQL的发送的时机。   *proxy:默认值。是否采用延迟,需要由另一方类上的延迟加载来决定。   *false:不采用延迟加载。   *no-proxy:3)批量抓取  批量抓取:查询了多个客户的时候,查询多个客户下的所有联系人。  在Customer.hbm.xml中上配置batch-size=”n”大家都学习辛苦了,加油!继续努力!微信号858568103,可以领到资料,也可以帮忙解决问题,希望能真正的

7、帮到你,让学习更加轻松!

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。