java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Mybatis批量插入index out of range错误

Mybatis批量插入index out of range错误的解决(较偏的错误)

作者:等待的萝卜

这篇文章主要介绍了Mybatis批量插入index out of range错误的解决(较偏的错误),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Mybatis批量插入index out of range错误

往往我们看到网上关于各类关于批量插入报这种错误的文章都是传入的集合为null,或者是参数获取不对等等,但是在开发的时候同事遇到了这种类型的错误,我一直以为是网上那些博客那些原因造成的,于是,两只眼睛一直盯着代码看来许久都没有找出什么问题。那是什么问题呢?

原因

是由于项目中用的是sharding-jdbc来进行数据库连接,而sharding-jdbc是不支持SQL语句的批量插入的。

改进

1.修改一下批量插入的的语句,这种比较鸡肋,可能会违背很多程序猿开发习惯

2.将连接数据源更换,将sharding-jdbc更换为com.alibaba.druid.pool.DruidDataSource

String index out of range: 100 报错详解

一个很奇葩的报错,出错情况

在这里进行debug之后可以看到,异常在substring中:

也就是判断字符串的时候报错:具体原因就是string字符串indexof的值本身只有5,然后在这里去取其第100 个字符作为截止,因此就会报这个错;

知识点

主要是堆String概念不清。下面针对字符串相关概念(String、char、char[])做一个简介。

针对上述问题解决办法

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文