MyBatis 插入空值时,需要指定JdbcType
mybatis insert空值报空值异常
你只要在insert语句中insert的对象加上jdbcType就可以了,修改如下:
#{menuTitle,jdbcType=VARCHAR}
<insert id="save"
parameterType="com.tarena.entity.Cost">
insert into cost values(
cost_seq.nextval,
#{name,jdbcType=VARCHAR},
#{base_duration,jdbcType=INTEGER},
#{base_cost,jdbcType=DOUBLE},
...
)
</insert>
其实也可以写成
<if test="name != null">
#{name}
</if>