mybatis delete 返回-2147482646的问题
Posted 琴声清幽
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis delete 返回-2147482646的问题相关的知识,希望对你有一定的参考价值。
在用mybatis作删除业务时,去返回值,得到-2147482646
原因是 开启了BATCH,在applicationContext.xml中配置的mybatis
<!--为这次两个不一致的提交,而打开,测试如何 --> <bean class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactoryBean"></constructor-arg> <!-- 打开此处,delete业务返回值为-2147482646,有异常。关闭批处理后,在作删除业务时,返回值为0,或1,正常 . 此处有三个选项 SIMPLE, REUSE, BATCH,默认SIMPLE, REUSE 是复用预处理语句,BATCH是批量更新 <constructor-arg name="executorType" value="BATCH"></constructor-arg> --> <constructor-arg name="executorType" value="REUSE"></constructor-arg> </bean>
将其改为REUSE ,就可以了。返回值有了,但批处理呢?
另外:
在mapper文件中写出这样:
<delete id="deleteZhouyiContent" parameterType="java.lang.Long"> <![CDATA[ delete from tbl_content where id = #{id,jdbcType=INTEGER} ]]> </delete>
前后加上CDATA,据说也管用,这个我没测试,这两个我都用上了,现在状态ok。
以上是关于mybatis delete 返回-2147482646的问题的主要内容,如果未能解决你的问题,请参考以下文章
mybatis insertupdate delete默认返回值解释与如何设置返回表主键
mybatis update/delete如何获取返回影响条数,在线坐等,直接配置resultType和不配置都不行,谢谢
spring+mybatis下delete和insert返回值-2147482646
mybatis+spring3.1 dao继承SqlSessionDaoSupport后使用sqlsession.delete() 为啥返回-2147482646这个值?