這篇文章主要為大家展示了“如何解決Mybatis查詢時數據丟失的問題”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何解決Mybatis查詢時數據丟失的問題”這篇文章吧。
公司里的實體類和mapper文件均由mybatis逆向工程生成
之前使用myabtis查詢時直接使用注解@select(......)時遇到了一個問題。
結果顯示數據庫查詢沒有問題,但是有的數據缺沒有插入到指定的字段中,如下圖中ID成功存儲,Z40_ID,Z40_103到Z40_113均失敗。
如果數據庫命名很規范比如user_name,用逆向插件生成實體類時該字段會自動轉換為userName
但是如果數據庫命名形式為:字母(含數字)_字母(含數字)這種情況,自動映射就會失效,就會發生部分數據沒有set到指定屬性下;
對于一些命名不規范的列需要加上注解手動映射
或者直接在mapper.xml文件里用xml方式寫sql語句,一般逆向工程都自動生成列的映射規范了;
select xx1字段 xx2字段 xx3字段 from A表 where 條件
在查詢的時候出現xx1字段的值和xx2的,xx3沒出來,
1.(數據庫字段是否有值?若無加一下值重啟再試一下)
2.將sql語句放到SQLyog 或者Navicat for MySQL 等mysql工具進行查詢,先確保語句得出結果沒有問題23.3
3.若此時無問題,大部分因為數據庫字段使用了一些敏感的外鍵字段,可適當修改一下這些健的名稱
(記得對應實體類,mybatis語句也要跟著修改)數據庫加入數據值 保存,重新啟動程序.
以上是“如何解決Mybatis查詢時數據丟失的問題”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。