mybatis注入Date日期值為null的解決方法
在今天的一次代碼編寫中,突然遇到了一個(gè)奇怪的問題,在使用mybatis進(jìn)行Date類型插入時(shí),可以很順利的就插入進(jìn)數(shù)據(jù)庫(kù)中了,可是當(dāng)我想從mysql中取出Date類型的值注入java中的Date類型時(shí),發(fā)現(xiàn)傳遞過來的值是空的,但是不管是映射還是命名規(guī)范都是正確的,就非常的奇怪。
數(shù)據(jù)庫(kù)設(shè)計(jì):
映射類的設(shè)計(jì):
@Datapublic class BorrowTime { //借書時(shí)間 private Date borrowTime; //過期時(shí)間 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);
查詢出來的值卻是這樣的:
在網(wǎng)上搜索了很多的資料,試了很多種方法都沒有效果,突然想到mybatis在進(jìn)行查詢的時(shí)候可以自動(dòng)的配置對(duì)應(yīng)的映射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);
手動(dòng)的去將每一個(gè)columns和Property對(duì)應(yīng),然后再去查詢
終于出現(xiàn)了想要的結(jié)果,所以可能是映射字段的問題還是其他的問題還有待以后查證。
到此這篇關(guān)于mybatis注入Date日期值為null的解決方法的文章就介紹到這了,更多相關(guān)mybatis注入Date日期值為null內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. SQLITE3 使用總結(jié)2. Microsoft Office Access刪除字段的方法3. SQLServer創(chuàng)建索引的5種方法小結(jié)4. Oracle DBMS_REPAIR包修復(fù)損壞數(shù)據(jù)塊5. SQL Server 2005 Reporting Services的一個(gè)bug及其解決方法6. sqlserver數(shù)據(jù)庫(kù)導(dǎo)入方法的詳細(xì)圖文教程7. 在Oracle中選取有父子或樹狀關(guān)系的數(shù)據(jù)記錄8. MySql使用mysqldump 導(dǎo)入與導(dǎo)出方法總結(jié)9. Mybatis批量插入返回插入成功后的主鍵id操作10. MariaDB中1045權(quán)限錯(cuò)誤導(dǎo)致拒絕用戶訪問的錯(cuò)誤解決方法
