欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java工程師進(jìn)階之MyBatis延遲加載的使用

 更新時(shí)間:2021年09月15日 11:46:42   作者:DrLai  
本文是java工程師進(jìn)階篇,主要介紹了java應(yīng)用開(kāi)發(fā)中MyBatis延遲加載及如何使用,有需要的朋友 可以借鑒參考下,希望能夠有所幫助

什么是延遲加載?

延遲加載也叫懶加載、惰性加載,使⽤延遲加載可以提⾼程序的運(yùn)行效率,針對(duì)于數(shù)據(jù)持久層的操作, 在某些特定的情況下去訪問(wèn)特定的數(shù)據(jù)庫(kù),在其他情況下可以不訪問(wèn)某些表,從⼀定程度上減少了 Java 應(yīng)⽤與數(shù)據(jù)庫(kù)的交互次數(shù)。

查詢學(xué)⽣和班級(jí)的時(shí),學(xué)生和班級(jí)是兩張不同的表,如果當(dāng)前需求只需要獲取學(xué)shengsheng的信息,那么查詢學(xué) ⽣單表即可,如果需要通過(guò)學(xué)⽣獲取對(duì)應(yīng)的班級(jí)信息,則必須查詢兩張表。 不同的業(yè)務(wù)需求,需要查詢不同的表,根據(jù)具體的業(yè)務(wù)需求來(lái)動(dòng)態(tài)減少數(shù)據(jù)表查詢的⼯作就是延遲加載。

如何使用延遲加載?

1.在 config.xml 中開(kāi)啟延遲加載

<settings>
 <!-- 打印SQL-->
 <setting name="logImpl" value="STDOUT_LOGGING" />
 <!-- 開(kāi)啟延遲加載 -->
 <setting name="lazyLoadingEnabled" value="true"/>
</settings>

2.將多表關(guān)聯(lián)查詢拆分成多個(gè)單表查詢

StudentRepository中

 public Student findByIdLazy(long id);

StudentRepository.xml

<resultMap id="studentMapLazy" type="entity.Student">
        <id column="id" property="id"></id>
        <result column="name" property="name"></result>
        <association property="classes" javaType="entity.Classes" select="repository.ClassesRepository.findByIdLazy" column="cld">
        </association>
    </resultMap>
    <select id="findByIdLazy" parameterType="long" resultMap="studentMapLazy">
-- select s.id ,s.name,c.id as cid,c.name as cname from student s,classes c where s.id =1 and s.cld=c.id;
    select * from student where id=#{id};
    </select>

ClassesRepository

public Classes findByIdLazy(long id);
<resultMap id="classesMap" type="entity.Classes">
        <id column="cid" property="id"></id>
        <result column="cname" property="name"></result>
        <collection property="students" ofType="entity.Student">
            <id column="id" property="id"></id>
            <result column="name" property="name"></result>
        </collection>
    </resultMap>

以上就是java工程師進(jìn)階之MyBatis延遲加載的使用的詳細(xì)內(nèi)容,更多關(guān)于java之MyBatis延遲加載的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 10分鐘在服務(wù)器部署好Jenkins的詳細(xì)過(guò)程

    10分鐘在服務(wù)器部署好Jenkins的詳細(xì)過(guò)程

    這篇文章主要介紹了10分鐘在服務(wù)器部署好Jenkins,本文主要是?Jenkins?的安裝部署,那前提我們應(yīng)該裝好?Git?Maven?JDK,準(zhǔn)備工作本文不給大家詳細(xì)介紹了,對(duì)服務(wù)器部署Jenkins相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-08-08
  • Java并發(fā)統(tǒng)計(jì)變量值偏差原因及解決方案

    Java并發(fā)統(tǒng)計(jì)變量值偏差原因及解決方案

    這篇文章主要介紹了Java并發(fā)統(tǒng)計(jì)變量值偏差原因及解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • SpringBoot應(yīng)用jar包啟動(dòng)原理詳解

    SpringBoot應(yīng)用jar包啟動(dòng)原理詳解

    本文主要介紹了SpringBoot應(yīng)用jar包啟動(dòng)原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03
  • java轉(zhuǎn)發(fā)和重定向的區(qū)別

    java轉(zhuǎn)發(fā)和重定向的區(qū)別

    這篇文章主要介紹了java轉(zhuǎn)發(fā)和重定向的區(qū)別,需要的朋友可以參考下
    2014-10-10
  • SpringMVC之@InitBinder注解詳解

    SpringMVC之@InitBinder注解詳解

    這篇文章主要介紹了SpringMVC之@InitBinder注解詳解,springmvc并不是能對(duì)所有類型的參數(shù)進(jìn)行綁定的,如果對(duì)日期Date類型參數(shù)進(jìn)行綁定,就會(huì)報(bào)錯(cuò)IllegalStateException錯(cuò)誤,需要的朋友可以參考下
    2024-01-01
  • 從實(shí)戰(zhàn)角度詳解Disruptor高性能隊(duì)列

    從實(shí)戰(zhàn)角度詳解Disruptor高性能隊(duì)列

    這篇文章主要介紹了從實(shí)戰(zhàn)角度詳解Disruptor高性能隊(duì)列,對(duì)正在學(xué)習(xí)這方面知識(shí)的小伙伴有很大的幫助,感興趣的小伙伴快來(lái)一起學(xué)習(xí)吧
    2021-08-08
  • SpringBoot如何集成Netty

    SpringBoot如何集成Netty

    這篇文章主要介紹了SpringBoot如何集成Netty問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • java線程池:獲取運(yùn)行線程數(shù)并控制線程啟動(dòng)速度的方法

    java線程池:獲取運(yùn)行線程數(shù)并控制線程啟動(dòng)速度的方法

    下面小編就為大家?guī)?lái)一篇java線程池:獲取運(yùn)行線程數(shù)并控制線程啟動(dòng)速度的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • 詳解MyBatis模糊查詢LIKE的三種方式

    詳解MyBatis模糊查詢LIKE的三種方式

    模糊查詢也是數(shù)據(jù)庫(kù)SQL中使用頻率很高的SQL語(yǔ)句,這篇文章主要介紹了詳解MyBatis模糊查詢LIKE的三種方式,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2018-10-10
  • Java設(shè)計(jì)模式中的策略模式詳細(xì)解析

    Java設(shè)計(jì)模式中的策略模式詳細(xì)解析

    這篇文章主要介紹了Java設(shè)計(jì)模式中的策略模式詳細(xì)解析,所謂策略模式,指的是做某一件事時(shí)有多種選擇(即策略),且不同的策略之間相互獨(dú)立,而且無(wú)論使用哪種策略,得到的結(jié)果都是相同的,需要的朋友可以參考下
    2023-12-12

最新評(píng)論