zoukankan      html  css  js  c++  java
  • Hibernate 检索策略之延迟加载和立即加载

       我们或多或少会听说过延迟加载这个名词,但是今天我们来深入的了解它的用处以及分类

     首先呢,我们先来说一下它的定义

    延迟加载(lazy load懒加载)是当在真正需要数据(调用真正的属性和方法来处理数据时)时,才执行SQL语句进行查询。避免了无谓的性能开销。

    延迟加载分类:

     01.类级别的查询策略

     02.一对多和多对多关联的查询策略

     03.多对一关联的查询策略

       Lazy:决定关联对象初始化时机

      1.类级别的默认加载策略是延迟加载

    以下两种方式都表示采用延迟加载策略

      举例:<class name="Dept" table="DEPT" lazy="true"></class>

           <class name="Dept" table="DEPT" ></class>

       2.一对多和多对多关联的查询策略

                   <set name="emp" cascade="save-update" inverse="true" lazy="true"><!-- casecade级联:取值 : none save-update delete all -->
                   <!-- inverse 默认值 false 主动方 维护关联关系 -->
                   <key column="deptid"></key><!-- key:这里是多的一方定义的外键 -->
                   <one-to-many class="Emp"/><!-- 多的一方的实体类型 -->
                   </set>   

        <set>元素的lazy元素

       

            3.多对一关联查询策略

             <many-to-one name="dept" class="Dept" column="deptid" lazy="proxy"></many-to-one>

            lazy属性

          

       

  • 相关阅读:
    构建之法阅读笔记03
    《学生快捷记账系统》——个人博客03——星期三
    《学生快捷记账系统》——个人博客02——星期二
    《学生快捷记账系统》——个人博客01——星期一
    构建之法阅读笔记02
    四则运算2
    Centos7 更新配置为阿里源步骤
    Git 的安装
    Dockerfile
    Docker 问题[Warning] IPv4 forwarding is disabled. Networking will not work.
  • 原文地址:https://www.cnblogs.com/wth1129/p/5773925.html
Copyright © 2011-2022 走看看