oracle+mybatis 实现批量更新

       之前都是遍历一个集合然后一条一条的执行sql语句,这样在数据量小的时候没有什么问题,但是当数据量大的时候访问数据库的次数就太多了,难免会对性能造成一定的影响。所以选择了批量更新;

open="begin" close=";end;" separator=";">
            update prpPolicyToDisaster
                
                    groupNo = #{temp.groupNo ,jdbcType=VARCHAR},
                    groupNoRegCount = #{temp.groupNoRegCount ,jdbcType=INTEGER},
                    isRegit = #{temp.isRegit ,jdbcType=VARCHAR},
                    isMainFlag = #{temp.isMainFlag ,jdbcType=VARCHAR},
                    policyType = #{temp.policyType ,jdbcType=VARCHAR},
                     registBatch=#{temp.registBatch,jdbcType=VARCHAR},
                     addressCode=#{temp.addressCode,jdbcType=VARCHAR},
                     insuredCode=#{temp.insuredCode,jdbcType=VARCHAR},
                    updateBy = #{temp.updateBy ,jdbcType=VARCHAR},
                    updateTime = #{temp.updateTime ,jdbcType=DATE},
                    createBy = #{temp.createBy ,jdbcType=VARCHAR},
                    createTime = #{temp.createTime ,jdbcType=DATE}
                

                
                    
                        disasterCode = #{temp.disasterCode,jdbcType=VARCHAR}  
                    

                    
                        and groupNo = #{temp.groupNo,jdbcType=VARCHAR}
                    

                    
                        and serialNo = #{temp.serialNo,jdbcType=INTEGER}
                    

                

        

 刚才是在网上查都说要配  allowMultiQueries=true ;或者但是配了以后发现没有什么用,只需要在遍历时加上代码中的加红的部分即可。

特别注意:我不是多写了一个逗号

 

你可能感兴趣的:(mybatis)