您好,登錄后才能下訂單哦!
使用mybatis注入Date日期時出現值為null怎么解決?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
在今天的一次代碼編寫中,突然遇到了一個奇怪的問題,在使用mybatis進行Date類型插入時,可以很順利的就插入進數據庫中了,可是當我想從mysql中取出Date類型的值注入java中的Date類型時,發現傳遞過來的值是空的,但是不管是映射還是命名規范都是正確的,就非常的奇怪。
數據庫設計:
映射類的設計:
@Data public class BorrowTime { //借書時間 private Date borrowTime; //過期時間 private Date expiredTime; }
mapper類:
@Select("SELECT borrow_time,expired_time FROM book_user WHERE bid IN (SELECT bid FROM book_user WHERE uid =#{uid})") public List<BorrowTime> findBorrowTime(Integer uid);
查詢出來的值卻是這樣的:
在網上搜索了很多的資料,試了很多種方法都沒有效果,突然想到mybatis在進行查詢的時候可以自動的配置對應的映射property,于是便去mapper中試了一下:
@Select("SELECT borrow_time,expired_time FROM book_user WHERE bid IN (SELECT bid FROM book_user WHERE uid =#{uid})") @Results({ @Result(column = "borrow_time",property = "borrowTime"), @Result(column = "expired_time",property = "expiredTime") }) public List<BorrowTime> findBorrowTime(Integer uid);
手動的去將每一個columns和Property對應,然后再去查詢
終于出現了想要的結果,所以可能是映射字段的問題還是其他的問題還有待以后查證。
關于使用mybatis注入Date日期時出現值為null怎么解決問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。