- 出现场景
dao层接口 :注意返回类型最好为包装类,如果为int的话,sql语句没有查询到数值则为空,会报异常
public Integer getAllperson(@Param("id")Long id);
xml文件中的sql语句
<select id="getAllperson" resultType="Integer">
select coalesce(count(id),0)
from table
where id= ${id}
</select>
因为count,sum等函数,查询的结果可能会为空,所以当,为空时 coalesce()函数返回0这样当涉及到运算是,不会抛出异常,
最后,如果用实体类来封装数据库中数据,有关数字的类型,最好用包装类,因为数据库中数据可能会为空,而数字基本类型不能为空,默认为0,从而造成数据错误