attempted to return null from a method with a primitive return type (Double).
- <select id="getMaxHitEventId" parameterType="string" resultType="int">
- select max(app_hitEventID) from hits_tab_app where app_hitV=#{app_hitV}
- </select>
mybatis+mysql查询出来会报如下错误:
attempted to return null from a method with a primitive return type (int).
我的返回值类型为int,但是查询出来的结果有空值,所以会出现如上的异常,以下为解决办法:
1.当查询出来为空时,给赋值一个默认值:
- select IFNULL(max(app_hitEventID),0) from hits_tab_app where app_hitV=#{app_hitV}
2.将返回值类型改为Integer,然后由业务代码去进行判断:
- <select id="getMaxHitEventId" parameterType="string" resultType="Integer">
- select max(app_hitEventID) from hits_tab_app where app_hitV=#{app_hitV}
- </select>