一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Mybatis返回int或者Integer類型報錯的解決辦法

Mybatis返回int或者Integer類型報錯的解決辦法

2020-07-19 12:32java教程網 Java教程

這篇文章主要介紹了Mybatis返回int或者Integer類型報錯的解決辦法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

會報錯如下:

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Mapper method 'com.bill.springMybatis.dao.UserDao.getUserIdByName attempted to return null from a method with a primitive return type (int).
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.Java:894)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

返回類型設置為封裝類型Integer或者基本類型int,都有可能出錯

例如

?
1
2
3
4
5
<select id="queryPaySum" resultType="java.lang.Integer" parameterType="map" >
  select sum(p.CASH_FEE) from PAY_INFO p
  where 1=1
     and p.TRADE_RESULT_CODE = #{traderesultcode}
</select>

我用的Oracle  利用 nvl()函數 解決問題

?
1
2
3
4
5
<select id="queryPaySum" resultType="java.lang.Integer" parameterType="map" >
  select nvl(sum(p.CASH_FEE), 0) from PAY_INFO p
  where 1=1
     and p.TRADE_RESULT_CODE = #{traderesultcode}
</select>

補充:

下面給大家在看下:用 ISNULL(), NVL(), IFNULL() and COALESCE() 函數替換空值

在數據庫操作中,往往要對一些查詢出來的空值進行替換,如函數SUM(),這個函數如果沒有值會返回NULL,這是我們不希望看到的,

在MySQL中我們可以這樣來寫:

?
1
select IFNULL(sum(data),0) ...

在SQLSERVER中我們可以這樣寫:

?
1
select ISNULL(sum(data),0) ...

在Oracle中我們可以這樣寫:

?
1
select NVL(sum(data),0) ...

對于所有數據庫適用的方法可以這樣寫:

?
1
select COALESCE(sum(data),0) ...

COALESCE()用法:

 COALESCE(value,...)

返回第一個不是null的值,如果參數列表全是null,則返回null

?
1
2
3
4
sSELECT COALESCE(NULL,1);
    -> 1
SELECT COALESCE(NULL,NULL,NULL);
    -> NULL

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 99视频久久 | luanlun绝对真实乱 | 国产成人一区二区三区视频免费蜜 | 免费在线视频网站 | 日本高h| 好大好深好涨好烫还要 | 久久观看视频 | 好大好硬好深好爽想要小雪 | 午夜欧美精品久久久久久久久 | ferr孕妇videos毛茸茸 | 国产一区二区免费在线 | 四缺一小说| 亚洲午夜精品久久久久久人妖 | 校花被拖到野外伦小说 | 亚洲AV无码A片在线观看蜜桃 | 小伙无套内射老女人 | 久久免费资源福利资源站 | 成人精品一区二区三区中文字幕 | 女人pp被扒开流水了 | 波多野结衣家庭教师 | 成人私人影院在线观看网址 | 晚上禁用的十大黄台视频 | 手机跑分排行最新排名 | japanhd粗暴video | 国产在线精品99一卡2卡 | haodiaocao的视频这里看 | 日本一区二区免费在线 | 共妻高h| 7788理论片在线观看 | 色屁屁二区 | 日韩制服丝袜在线观看 | 国产123区 | 亚洲精品一区制服丝袜 | 大桥未久一区二区 | 国产福利不卡一区二区三区 | 久久精品视在线观看85 | 亚洲冬月枫中文字幕在线看 | 免费一区二区 | 国产欧美视频一区二区三区 | 久久高清一级毛片 | 成人国产精品一级毛片视频 |