java integer null 0_Mybatis Integer类型参数值为0时得到为空的解决方法
今日遇到的問題:
查詢版本信息時(shí),由于version是Integer類型,所以當(dāng)前臺(tái)選擇版本為0時(shí),變成了查詢了所有的版本信息。
sql片段:
AND a.version = #{version}
原因:
MyBatis因自身原因默認(rèn)了 Integer類型數(shù)據(jù)值等于0時(shí) 為 ""(空字符串)
解決辦法:
1. 某些情況下,可以在Controller處就攔截,并向前臺(tái)提示,比如:“必須輸入有效數(shù)字”,不讓他再往后傳。
2. 將判斷條件version != ''刪去,不讓它判斷。
如:
AND a.version = #{version}
弊端:就是當(dāng)有哪位仁兄真的用這個(gè)方法傳了個(gè)空字符串,就無(wú)法判斷。
3. 單獨(dú)加上當(dāng)version為0的特殊情況
如:
AND a.version = #{version}
當(dāng)然,如果想默認(rèn)輸入為0時(shí)查詢所有(類似于上述問題示例)或者是后面想轉(zhuǎn)為空字符串,
可以不用改,也算是巧用"bug"。
以上就是本次介紹的全部知識(shí)點(diǎn)內(nèi)容,感謝大家對(duì)谷谷點(diǎn)程序的支持。
總結(jié)
以上是生活随笔為你收集整理的java integer null 0_Mybatis Integer类型参数值为0时得到为空的解决方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java课程设计 博客园_java课程设
- 下一篇: java 错误码设计_JAVA端的错误码