mybatis查詢到了數(shù)據(jù),但是實(shí)體類個(gè)別字段為null問題
mybatis查詢數(shù)據(jù),實(shí)體類個(gè)別字段為null
今天在做一個(gè)簡單的查詢操作時(shí)遇到的坑,折騰了好久好久,有必要記錄一下本菜雞的心理活動(dòng)
debug單步執(zhí)行發(fā)現(xiàn)查詢之后有幾個(gè)字段沒有映射成功,依然為null
而控制臺(tái)打印的sql語句確實(shí)拿到了
想著是不是實(shí)體類里面的字段命名不一致,瞪大狗眼看了一萬遍也沒發(fā)現(xiàn)有啥不一樣。
又試著在set方法里設(shè)斷點(diǎn),發(fā)現(xiàn)set方法執(zhí)行了,但是傳進(jìn)來是空。。靈異了。。
最終的最終發(fā)現(xiàn)
mybatis的配置文件里自己整了那么一句。。。
查詢的數(shù)據(jù)中有幾個(gè)列為null 封裝不上
sql語句查詢存在的列顯示不存在
環(huán)境:java web 項(xiàng)目 sql工具 navicat
問題
同事的代碼查詢出的數(shù)據(jù)總是有兩個(gè)列的數(shù)據(jù)為null, 在排查封裝的returnMap和實(shí)體類之后發(fā)現(xiàn)無誤 ,后再Navicat 工具使用sql查詢 發(fā)現(xiàn)根據(jù)列查詢數(shù)據(jù)時(shí) 其中的幾個(gè)列名為Unknown
(自己做的演示表)
數(shù)據(jù)
看著表查詢(看似語句正確,其實(shí)他報(bào)錯(cuò)了 找不到name列)
然后Navicat 查看表的設(shè)計(jì)查詢 name列看似一切正常
我將表轉(zhuǎn)儲(chǔ)為sql文件 打開發(fā)現(xiàn) name的單引號(hào)換行了
然后在nativcat上點(diǎn)擊name 往左移發(fā)現(xiàn)name沒見了
在刪除字段重建之后發(fā)現(xiàn)可以查詢了
在sqlyog 上查看表一明確的發(fā)現(xiàn)前空格問題
查看表的設(shè)計(jì)結(jié)構(gòu)也會(huì)發(fā)現(xiàn)name列沒有顯示
小結(jié)一下
因?yàn)樵趧?chuàng)建列名前添加了空格 navicat上是不會(huì)顯示的所以誤是正確的列名 但如果你是sqlyog會(huì)發(fā)現(xiàn)這些問題
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java編寫簡易rabbitmq生產(chǎn)者與消費(fèi)者的代碼
開發(fā)時(shí)經(jīng)常與其它系統(tǒng)用rabbitmq對接,當(dāng)需要自測時(shí),還是自己寫rabbitmq生產(chǎn)者、消費(fèi)者自測方便些,下面給大家總結(jié)使用java編寫簡易rabbitmq的方法,感興趣的朋友一起看看吧2023-11-11Spring RedirectAttributes參數(shù)跳轉(zhuǎn)代碼實(shí)例
這篇文章主要介紹了Spring RedirectAttributes參數(shù)跳轉(zhuǎn)代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04java理論基礎(chǔ)Stream?reduce實(shí)現(xiàn)集合元素歸約
這篇文章主要為大家介紹了java理論基礎(chǔ)Stream?reduce實(shí)現(xiàn)集合元素歸約示例詳解有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03java實(shí)現(xiàn)潛艇大戰(zhàn)游戲源碼
潛艇大戰(zhàn)游戲相信大家都玩過,是一款非常有趣的小游戲,那么基于代碼是如何實(shí)現(xiàn)的呢?今天小編給大家?guī)硪黄坛處椭蠹覍W(xué)習(xí)java實(shí)現(xiàn)潛艇大戰(zhàn)游戲,感謝的朋友一起看看吧2021-06-06Java中優(yōu)先隊(duì)列PriorityQueue常用方法示例
這篇文章主要介紹了Java中優(yōu)先隊(duì)列PriorityQueue常用方法示例,PriorityQueue是一種特殊的隊(duì)列,滿足隊(duì)列的“隊(duì)尾進(jìn)、隊(duì)頭出”條件,但是每次插入或刪除元素后,都對隊(duì)列進(jìn)行調(diào)整,使得隊(duì)列始終構(gòu)成最小堆(或最大堆),需要的朋友可以參考下2023-09-09Maven報(bào)錯(cuò)之導(dǎo)入Junit包來實(shí)現(xiàn)@Test注解問題
這篇文章主要介紹了Maven報(bào)錯(cuò)之導(dǎo)入Junit包來實(shí)現(xiàn)@Test注解問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11