最近在项目开发中,mybatis遇到一个很奇怪的问题,因为想在后台传一个int型0插入到数据,却被识别成了null。
后面,排除问题时,查到mybatis源码对其进行了强制定义。所以解决问题可以改造mybatis源码,或者简单的做以下处理:
<insert id="insertDemo" 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