用HIBERNATER做新增操作时,这种问题是不需要人为处理,但MYBATIS却没有处理;另外还有就是分页,HIBERNATE提供了基于不同数据库的分页机制,但MYBATIS没有提供;
MyBatis 插入空值时,需要指定JdbcType
mybatis insert空值报空值异常,但是在pl/sql不会提示错误,主要原因是mybatis无法进行转换,
解决方法:
在insert语句中,增加jdbcType解决问题
<insert id="save" parameterType="Province">
<![CDATA[
insert into t_yp_province
(fid,fname,fnumber,fsimpleName,fdescription,fcreateTime,flastUpdateTime,fdirect)
values
( #{id,jdbcType=VARCHAR},
#{name,jdbcType=VARCHAR},
#{number,jdbcType=VARCHAR},
#{simpleName,jdbcType=VARCHAR},
#{description,jdbcType=VARCHAR},
#{createTime,jdbcType=DATE},
#{lastUpdateTime,jdbcType=DATE},
#{direct,jdbcType=NUMERIC}
)
]]>
</insert>;
MyBatis 插入空值时,需要指定JdbcType
mybatis insert空值报空值异常,但是在pl/sql不会提示错误,主要原因是mybatis无法进行转换,
解决方法:
在insert语句中,增加jdbcType解决问题
<insert id="save" parameterType="Province">
<![CDATA[
insert into t_yp_province
(fid,fname,fnumber,fsimpleName,fdescription,fcreateTime,flastUpdateTime,fdirect)
values
( #{id,jdbcType=VARCHAR},
#{name,jdbcType=VARCHAR},
#{number,jdbcType=VARCHAR},
#{simpleName,jdbcType=VARCHAR},
#{description,jdbcType=VARCHAR},
#{createTime,jdbcType=DATE},
#{lastUpdateTime,jdbcType=DATE},
#{direct,jdbcType=NUMERIC}
)
]]>
</insert>;