最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

對(duì)Mybatis?Plus中@TableField的使用正解

 更新時(shí)間:2022年01月15日 10:05:13   作者:一步一結(jié)  
這篇文章主要介紹了對(duì)Mybatis?Plus中@TableField的使用正解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

@TableField的使用

1 研究背景和過程

妹紙開發(fā)突然發(fā)現(xiàn)@TableField失效了,在群里發(fā)問。一了解,發(fā)現(xiàn)妹紙本意是想用@TabkeField達(dá)到類似@JsonProperty的功能。也就是當(dāng)實(shí)體類屬性名與數(shù)據(jù)庫(kù)列名不一致時(shí),通過此注解實(shí)現(xiàn)別名效果。

奇怪的是,這注解一部分成功,一部分失效。具體表現(xiàn)就是有時(shí)候可以取到值,有時(shí)候又取不到。我點(diǎn)進(jìn)改注解源碼,發(fā)現(xiàn)它給value設(shè)定的本意是:當(dāng)駝峰轉(zhuǎn)化未開啟時(shí),使用此注解實(shí)現(xiàn)駝峰轉(zhuǎn)化。然而,我實(shí)際測(cè)試表明它其實(shí)沒這功能。

我信誓旦旦跟妹紙講,@TableField沒有別名的功能。誰知妹紙給我發(fā)了一張自動(dòng)打印sql的截圖。里面清清楚楚的顯示,MP確實(shí)自動(dòng)生成了AS別名。靈光一閃,是否是Mybatis Plus自動(dòng)生成的可以別名,而自己寫的sql就不行?

不驗(yàn)不知道,一驗(yàn)嚇一跳。果然如此,手寫的sql都不能自動(dòng)生成別名,而自動(dòng)生成的sql查詢語句都成功轉(zhuǎn)化了。至此,@TableField注解告一段落。

2 總結(jié)

2.1 別名效果 value屬性

使用MP自動(dòng)生成的方法時(shí),可以用@TableField起別名

在xml寫sql時(shí),需要用as或者resultMap來轉(zhuǎn)化

2.2 防止字段持久化 exist屬性

使用exist屬性可以控制類中屬性在表中是都一定對(duì)應(yīng),如果有不存在于數(shù)據(jù)表的字段,建議都設(shè)成fasle

@TableField的作用

@TableField(exist = false)

注解加載bean屬性上,表示當(dāng)前屬性不是數(shù)據(jù)庫(kù)的字段,但在項(xiàng)目中必須使用,這樣在使用bean的時(shí)候,mybatis-plus就會(huì)忽略這個(gè),不會(huì)報(bào)錯(cuò)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring中最常用的注解之一@Autowired詳解

    Spring中最常用的注解之一@Autowired詳解

    本文講解了Spring中最常用的注解之一@Autowired, 平時(shí)我們可能都是使用屬性注入的,但是后續(xù)建議大家慢慢改變習(xí)慣,使用構(gòu)造器注入。同時(shí)也講解了這個(gè)注解背后的實(shí)現(xiàn)原理,需要的朋友可以參考下
    2023-01-01
  • 通過Java來測(cè)試JSON和Protocol Buffer的傳輸文件大小

    通過Java來測(cè)試JSON和Protocol Buffer的傳輸文件大小

    這篇文章主要介紹了通過Java來測(cè)試JSON和Protocol Buffer的傳輸文件大小,Protocol Buffer(文中簡(jiǎn)稱Protobuffer)是谷歌開發(fā)的新的文件傳輸格式,需要的朋友可以參考下
    2015-12-12
  • 詳解Java信號(hào)量Semaphore的原理及使用

    詳解Java信號(hào)量Semaphore的原理及使用

    Semaphore來自于JDK1.5的JUC包,直譯過來就是信號(hào)量,被作為一種多線程并發(fā)控制工具來使用。本文將詳解其原理與使用方法,感興趣的可以學(xué)習(xí)一下
    2022-05-05
  • SpringMVC文件上傳原理及實(shí)現(xiàn)過程解析

    SpringMVC文件上傳原理及實(shí)現(xiàn)過程解析

    這篇文章主要介紹了SpringMVC文件上傳原理及實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • MyBatis嵌套查詢collection報(bào)錯(cuò):org.apache.ibatis.exceptions.TooManyResultsException

    MyBatis嵌套查詢collection報(bào)錯(cuò):org.apache.ibatis.exceptions.TooMany

    本文主要介紹了MyBatis嵌套查詢collection報(bào)錯(cuò):org.apache.ibatis.exceptions.TooManyResultsException,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • Java實(shí)現(xiàn)銀行ATM系統(tǒng)

    Java實(shí)現(xiàn)銀行ATM系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)銀行ATM系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • 更改eclipse的JDK版本詳細(xì)步驟

    更改eclipse的JDK版本詳細(xì)步驟

    我們用eclipse在做項(xiàng)目的時(shí)候會(huì)切換jdk版本,本地運(yùn)行的項(xiàng)目所使用的jdk版本比Linux服務(wù)器高(低),需要調(diào)低(高)JDK版本,這篇文章主要給大家介紹了關(guān)于如何更改eclipse的JDK版本的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • java對(duì)象拷貝詳解及實(shí)例

    java對(duì)象拷貝詳解及實(shí)例

    這篇文章主要介紹了java對(duì)象拷貝詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • 關(guān)于多線程常用方法以及對(duì)鎖的控制(詳解)

    關(guān)于多線程常用方法以及對(duì)鎖的控制(詳解)

    下面小編就為大家?guī)硪黄P(guān)于多線程常用方法以及對(duì)鎖的控制(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • SpringBoot整合Mybatis與MybatisPlus方法詳細(xì)講解

    SpringBoot整合Mybatis與MybatisPlus方法詳細(xì)講解

    這篇文章主要介紹了SpringBoot整合Mybatis與MybatisPlus方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-01-01

最新評(píng)論

岳阳市| 滨州市| 吴忠市| 甘南县| 蕲春县| 乐亭县| 梨树县| 如东县| 曲麻莱县| 延寿县| 鹿泉市| 资阳市| 永修县| 金塔县| 宣恩县| 安徽省| 壤塘县| 新田县| 鄂温| 驻马店市| 报价| 衡水市| 海阳市| 屏山县| 延川县| 南和县| 凭祥市| 桐梓县| 都匀市| 尼木县| 碌曲县| 都江堰市| 西贡区| 泽普县| 黄龙县| 赤壁市| 莫力| 新巴尔虎左旗| 景泰县| 滦平县| 广水市|