在实际项目中,遇到一个问题,就是用insert, update, delete操作时,无法返回操作的数量,都是返回-2147482646 这一个值。后来在网上查了查,原因是因为mybatis配置的原因。在mybatis里面有一个配置属性defaultExecutorType,当这个值为BATCH时, 返回结果就只有-2147482646 这一个值。defaultExecutorType一共有三个值:BATCH, REUSE, SIMPLE。这三个值分别的特点如下:
名称 | 描述 |
---|---|
SIMPLE | 执行器执行其它语句,默认值。 |
REUSE | 可能重复使用prepared statements 语句 |
BATCH | 可以重复执行语句和批量更新 |
而解决以上问题的方法就是可以将defaultExecutorType的值改成SIMPLE或REUSE,或者直接删除该配置就可以了。