• Hibernate中的延迟加载及fetch


                                                          Hibernate中的延迟加载

    1.类级别的查询策略:

    lazy  :  true(默认值)

                false(立即加载)

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

    lazy:  proxy(默认值)

             no-proxy

             false

    3.一对多  或多对多

    lazy:true(默认值)

             false

             extra

     fetch:影响Hibernate针对底层SQL的生成

    一、emp的映射文件的类级别设置非延迟加载

    第二条会报空指针异常

     二、emp的映射文件的类级别设置非延迟加载,其多对一属性也设置为非延迟加载

     测试代码

     

     三、emp的映射文件的类级别设置非延迟加载,多对一节点设置延迟加载和fetch=“join”

     结论1:当fetch和lazy连用的时候,设置fetch=“join”,lazy的属性会失去作用,即不再保证非延迟加载,而是即时加载

     四、当使用query接口的list()方法时,fetch=“join” lazy属性会重新生效


    结论:使用query接口的list()方法,fetch=“join”,lazy的属性重新生效,这也是由list本身的机制决定的,list只能往内存中放数据,不能从内存中取数据,必须强制访问数据库

  • 相关阅读:
    uniapp中uni.setNavigationBarTitle(OBJECT) 动态设置当前页面的标题。
    vuex的安装
    创建vue项目
    方法
    element-ui的tree组件的使用
    vue树形组件tree遇到的坑
    vuex持久化 vuex-persistedstate
    vuex持久化 vuex-persistedstate,解决刷新跳转到登录页的问题
    How to view file history in Git?
    浏览器里查看请求头
  • 原文地址:https://www.cnblogs.com/hmy-1365/p/5774017.html
Copyright © 2020-2023  润新知