springMVC+mybatis 增删改操作后判断影响行数一直返回-2147482646

MyBatis发现更新和插入返回值一直为"-2147482646"的错误是由defaultExecutorType设置引起的,如果设置为BATCH,更新返回值就会丢失。mybatis官方的讨论列表,这句很关键:“If the BATCH executor is in use, the update counts are being lost. ”


spring/mybtis 配置文件


	
		
		
	

	
	
		
		
	
	

	
	
		
		
	

在mybatis里面有一个配置属性defaultExecutorType,当这个值为BATCH时, 返回结果就只有-2147482646 这一个值。defaultExecutorType一共有三个值:BATCH, REUSE, SIMPLE。这三个值分别的特点如下:

名称         描述
SIMPLE     执行器执行其它语句,默认值。
REUSE     可能重复使用prepared statements 语句
BATCH     可以重复执行语句和批量更新    

而解决以上问题的方法就是可以将defaultExecutorType的值改成SIMPLE或REUSE,或者直接删除该配置就可以了。

就是因为上面设置了 这句引起的。去掉即可。

这是设置如此是想要进行批量操作,但是经测试没有此处的设置也可进行批量操作。大胆果断的删除即可。


参考地址:http://www.cnblogs.com/parryyang/p/5484459.html

你可能感兴趣的:(开发常见错误与环境配置问题)