mybatis查询字段为null设置为0的操作
使用mybatis查询(mysql)时,会使用多个double字段做相加,但是呢,其中几个字段有可能是null,会抛空指针。
解决方法自动生成的mybatis mapper文件长这样
<sql id='Base_Column_List'> ID, PREPAYMENT_FEE </sql>
修改它
<sql id='Base_Column_List'> ID, ifnull(PREPAYMENT_FEE,0) as PREPAYMENT_FEE </sql>
补充:mybatis中0和null关系处理
最近在项目开发中,mybatis遇到一个很奇怪的问题,因为想在后台传一个int型0插入到数据,却被识别成了null。
后面,排除问题时,查到mybatis源码对其进行了强制定义。
所以解决问题可以改造mybatis源码,或者简单的做以下处理:
<insert parameterType='java.util.Map'>INSERT INTO TABLE<trim prefix='(' suffix=')' suffixOverrides=','> <if test='importRow != null and importRow != ’’ or importRow ==0 '> IMPORT_ROW,</if></trim><trim prefix='values (' suffix=')' suffixOverrides=','> <if test='importRow != null and importRow != ’’ or importRow ==0 '> #{importRow}, </if></trim></insert>
增强判断添加 or importRow ==0
以上为个人经验,希望能给大家一个参考,也希望大家多多支持好吧啦网。如有错误或未考虑完全的地方,望不吝赐教。
相关文章:
1. MySQL CHAR和VARCHAR该如何选择2. SQL Server里函数的两种用法(可以代替游标)3. Oracle数据库最大可用性体系结构4. SQL Server数据库多种方式查找重复记录5. 用shell抽取,更新db2的数据6. 两个sql server 2000的通用分页存储过程7. MySQL全文搜索之布尔搜索8. DB2新手使用的一些小笔记:新建实例、数据库路径不存在、客户端连接 .9. Mysql故障排除:Starting MySQL. ERROR! Manager of pid-file quit without updating file10. Mysql/MariaDB启动时处于进度条状态导致启动失败的原因及解决办法
