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

MyBatis使用動(dòng)態(tài)表或列代碼解析

 更新時(shí)間:2018年02月06日 16:17:51   作者:流煙默  
這篇文章主要介紹了MyBatis使用動(dòng)態(tài)表或列代碼解析,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下

有時(shí)候會(huì)不可避免使用動(dòng)態(tài)表或者列進(jìn)行業(yè)務(wù)處理。下面學(xué)習(xí)幾種動(dòng)態(tài)表/列的使用方式:

【1】使用預(yù)編譯

即,默認(rèn)值。

<select id="hisNumber" parameterType="hashmap" resultType="hashmap" >
   select number from ${oldTableName} 
<!--這里使用"$"!!!-->
where name=#{name} and date = #{date}
<!--這里使用"#"-->
<select>

預(yù)編譯,即首先會(huì)生成select number from ? where name=? and date=? 這樣使用”?”作為占位符的語(yǔ)句,然后進(jìn)行參數(shù)解析。

【2】使用非預(yù)編譯

<select id="hisNumber" parameterType="hashmap" resultType="hashmap" statementType="STATEMENT" >
   select number from ${oldTableName} 
<!--這里使用"$"!!!-->
where name='${name,jdbcType=VARCHAR}' and date = '${date,jdbcType=TIMESTAMP}'
<select>

注意后面name和date的取值,使用了'${name}' 格式,這樣會(huì)對(duì)參數(shù)進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換,有助于mysql查詢時(shí)提升性能。

【3】仍舊使用非預(yù)編譯

<select id="hisNumber" parameterType="hashmap" resultType="hashmap" statementType="STATEMENT" >
   select number from ${oldTableName} 
<!--這里使用"$"!!!-->
where name=${name} and date = ${date}
<select>

注意后面name和date的取值,使用了${name} 格式,將會(huì)直接取參數(shù)值,不進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。當(dāng)參數(shù)為數(shù)值類型且格式如“00124”時(shí),將會(huì)出現(xiàn)數(shù)據(jù)錯(cuò)讀(會(huì)將0124、124等都讀出來(lái))。

故建議使用第一種方式??!

總結(jié)

以上就是本文關(guān)于MyBatis使用動(dòng)態(tài)表或列代碼解析的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • Java并發(fā)編程預(yù)防死鎖過(guò)程詳解

    Java并發(fā)編程預(yù)防死鎖過(guò)程詳解

    這篇文章主要介紹了Java并發(fā)編程預(yù)防死鎖過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Java8如何構(gòu)建一個(gè)Stream示例詳解

    Java8如何構(gòu)建一個(gè)Stream示例詳解

    Java 8 是迄今為止在語(yǔ)義上改動(dòng)上最大的一個(gè)平臺(tái)。下面這篇文章主要給大家介紹了關(guān)于Java8如何構(gòu)建一個(gè)Stream的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04
  • 淺談JVM之類的加載鏈接和初始化

    淺談JVM之類的加載鏈接和初始化

    有了java class文件之后,為了讓class文件轉(zhuǎn)換成為JVM可以真正運(yùn)行的結(jié)構(gòu),需要經(jīng)歷加載,鏈接和初始化的過(guò)程。這三個(gè)過(guò)程是怎么工作的呢?在本文中你將會(huì)找到答案。
    2021-06-06
  • Spring事務(wù)的七種傳播行為

    Spring事務(wù)的七種傳播行為

    這篇文章主要介紹了Spring事務(wù)的七種傳播行為,文章圍繞主題的相關(guān)資料展開(kāi)詳細(xì)的內(nèi)容解說(shuō),具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-04-04
  • SpringBoot整合MyBatisPlus配置動(dòng)態(tài)數(shù)據(jù)源的方法

    SpringBoot整合MyBatisPlus配置動(dòng)態(tài)數(shù)據(jù)源的方法

    這篇文章主要介紹了SpringBoot整合MyBatisPlus配置動(dòng)態(tài)數(shù)據(jù)源的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-05-05
  • mybatis中 if-test 數(shù)字判斷的坑及解決

    mybatis中 if-test 數(shù)字判斷的坑及解決

    這篇文章主要介紹了mybatis中 if-test 數(shù)字判斷的坑及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Spring中的refreshContext源碼分析

    Spring中的refreshContext源碼分析

    這篇文章主要介紹了Spring中的refreshContext源碼分析,在SpringBoot啟動(dòng)流程中,主要的兩個(gè)階段是初始化SpringApplication對(duì)象以及SpringApplication.run方法執(zhí)行的內(nèi)容,今天主要細(xì)講的是SpringApplication.run中的刷新容器refreshContext方法,需要的朋友可以參考下
    2023-12-12
  • 解決springboot自定義配置Boolean屬性不能生效的問(wèn)題

    解決springboot自定義配置Boolean屬性不能生效的問(wèn)題

    這篇文章主要介紹了解決springboot自定義配置Boolean屬性不能生效的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Netty啟動(dòng)流程注冊(cè)多路復(fù)用源碼解析

    Netty啟動(dòng)流程注冊(cè)多路復(fù)用源碼解析

    這篇文章主要介紹了Netty啟動(dòng)流程注冊(cè)多路復(fù)用源碼分析,繼續(xù)分析channel是如何注冊(cè)到selector中的,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-03-03
  • java防盜鏈在報(bào)表中的應(yīng)用實(shí)例(推薦)

    java防盜鏈在報(bào)表中的應(yīng)用實(shí)例(推薦)

    下面小編就為大家?guī)?lái)一篇java防盜鏈在報(bào)表中的應(yīng)用實(shí)例(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-09-09

最新評(píng)論