myBatis 返回 int 类型时,报 null 异常

写了一个下面的SQL,用来check time 在表中存不存在的:

<select id="checkTimeExist" resultType="int">
  SELECT
    1
  FROM
    dual
  WHERE
    EXISTS (
      SELECT
        1
      FROM
        `performance` AS p
      WHERE
        p.`stat_time` = #{time}
    )
</select>

我把返回值设为了 resultType=”int” ,结果在查询不到结果时,报了下面的异常:

 org.apache.ibatis.binding.BindingException: Mapper method 'com.test.persistence.PerformanceMapper.checkTimeExist attempted to return null from a method with a primitive return type (int).
    at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:83) ~[mybatis-3.4.0.jar:3.4.0]
    at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:53) ~[mybatis-3.4.0.jar:3.4.0]
    at com.sun.proxy.$Proxy38.checkTimeExist(Unknown Source) ~[?:?]
    ...

看来就只能把 返回值 类型 改成 Integer 来解决这个问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值