mybatis?resultMap沒(méi)有全部對(duì)應(yīng)的字段處理方式
resultMap沒(méi)有全部對(duì)應(yīng)的字段處理
記錄說(shuō)明
在使用mybatis的時(shí)候,使用mapper將表記錄和實(shí)體對(duì)應(yīng)起來(lái)的方法大概有:resultType和resultMap兩種。
resultType,直接指定需要封裝的實(shí)體,mybatis會(huì)利用反射,將數(shù)據(jù)庫(kù)中字段對(duì)應(yīng)到實(shí)體中的屬性,對(duì)應(yīng)規(guī)則是:下劃線 對(duì)應(yīng)為 駝峰,如:user_phone對(duì)應(yīng)到userPhone。resultMap,比上面的方法靈活一些,可以自己指定對(duì)應(yīng)。
現(xiàn)在碰到的問(wèn)題是:只有幾個(gè)特殊的字段由于數(shù)據(jù)庫(kù)字段和實(shí)體名字對(duì)應(yīng)不上,需要手動(dòng)寫(xiě),但是其他大部分的屬性和字段都是能正確對(duì)應(yīng)的。如果我用resultMap,只寫(xiě)那幾個(gè)特殊字段的對(duì)應(yīng)關(guān)系,其他的字段能正確映射封裝嗎?意思就是:
我的實(shí)體是這樣的

但是我的resultMap是這樣的

只對(duì)應(yīng)了四個(gè)字段,其他的字段我都沒(méi)有手動(dòng)映射,能正確封裝進(jìn)去嗎?
結(jié)論是:可以的,你指定規(guī)則的,就安裝指定規(guī)則來(lái),如果沒(méi)有指定規(guī)則,就按照默認(rèn)的對(duì)應(yīng)規(guī)則來(lái).
大坑之 resultMap = Long
出現(xiàn)at com.sun.proxy.$Proxy28.selectList(Unknown Source)
原因是 resultMap = long 了
resultType="Long"
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MyBatis #{}和${} |與數(shù)據(jù)庫(kù)連接池使用詳解
本文將為大家說(shuō)說(shuō)關(guān)于 #{} 和 ${},這個(gè)是 MyBatis 在面試中最常問(wèn)的面試題,以及數(shù)據(jù)庫(kù)連接池相關(guān)的知識(shí),感興趣的朋友跟隨小編一起看看吧2024-01-01
使用MyBatis進(jìn)行數(shù)據(jù)庫(kù)映射的方式
這篇文章主要介紹了使用MyBatis進(jìn)行數(shù)據(jù)庫(kù)映射的方式,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-10-10
MyBatis Properties及別名定義實(shí)例詳解
這篇文章主要介紹了MyBatis Properties及別名定義實(shí)例詳解,需要的朋友可以參考下2017-08-08
使用@TableField(updateStrategy=FieldStrategy.IGNORED)遇到的坑記錄
這篇文章主要介紹了使用@TableField(updateStrategy=FieldStrategy.IGNORED)遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
Java解決浮點(diǎn)數(shù)計(jì)算不精確問(wèn)題的方法詳解
在 Java 中,浮點(diǎn)數(shù)計(jì)算不精確問(wèn)題指的是使用浮點(diǎn)數(shù)進(jìn)行運(yùn)算時(shí),由于浮點(diǎn)數(shù)的內(nèi)部表示方式和十進(jìn)制數(shù)的表示方式存在差異,導(dǎo)致計(jì)算結(jié)果可能出現(xiàn)誤差,本文就給大家介紹一下Java如何解決浮點(diǎn)數(shù)計(jì)算不精確問(wèn)題,需要的朋友可以參考下2023-09-09
Java生成PDF文檔兩個(gè)超實(shí)用的庫(kù)( iText和Apache PDFBox)
這篇文章主要介紹了Java生成PDF文檔兩個(gè)超實(shí)用的庫(kù),分別是用 iText庫(kù)以及用Apache PDFBox庫(kù)生成PDF,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-02-02

