hibernate 检索策略

Posted 郑能量!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate 检索策略相关的知识,希望对你有一定的参考价值。

检索数据时的两个问题:

  1、不浪费内存:只查询需要的数据

  2、更高的查询效率:发送尽可能少的 SQL 语句

 

类级别的检索策略:

  1、立即检索

  2、延迟检索(只初始化 OID,其余的属性只在使用的时候才会再加载)

  通过 <class> 元素的 lazy 属性来设置

  注意:此设置只对 load 方法有效

 

一对多和多对多的检索策略:

  在映射文件中,用 <set> 元素来配置一对多和多对多的关联关系。<set> 元素主要有 lazy,fetch 属性

  lazy:主要决定集合被初始化的时机,即到底是在加载对象时就被初始化,还是程序在访问集合时才被初始化(默认为true)

  fetch:取值为 select 或 subselect 时,决定初始化集合的查询语句的形式,若取值为 join,则决定集合被初始化的时机

    若把 fetch 设置为 join,则会忽略 lazy 属性

    若把 fetch 设置为 subselect,则会忽略 batch-size 属性

   batch-size:设定批量检索的数量。批量检索能减少 select 语句的数目,提高运行性能。

以上是关于hibernate 检索策略的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate 检索策略

hibernate 检索策略

hibernate检索策略(抓取策略)

Hibernate的检索策略

Hibernate检索策略

Hibernate检索策略