使用ibaits 查询数据时,如果结果为空,将报错。

来源:互联网 发布:超级终端软件 编辑:程序博客网 时间:2024/04/30 07:19

问题描述:

使用ibaits 查询数据时,如果结果为空,将报错。

问题原因:

如果结果为空,queryForObject() 和queryForList()返回的是null, 如果对这个返回值直接做强制类型转换则将报此错误。 

如 :

goodId = (Integer)sqlMapClient.queryForObject("Good.sGoodByInfo", mapInfo ); // 该语句在返回结果为null 时会报错

解决方案:

如果需要做强制类型转换,则不直接对结果进行转换,先判断是否为空:

 Object oReturnId = sqlMapClient.queryForObject("Good.sGoodByInfo", mapInfo );     // 如果存在该成品,则将查询结果转为查询到的id号if( null != oReturnId ){    goodId = (Integer)oReturnId;}



原创粉丝点击