千家信息网

SpringBoot2.0整合tk.mybatis异常怎么解决

发表于:2025-11-19 作者:千家信息网编辑
千家信息网最后更新 2025年11月19日,本篇内容介绍了"SpringBoot2.0整合tk.mybatis异常怎么解决"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家
千家信息网最后更新 2025年11月19日SpringBoot2.0整合tk.mybatis异常怎么解决

本篇内容介绍了"SpringBoot2.0整合tk.mybatis异常怎么解决"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

pom配置如下(标准简易版):

        org.springframework.boot        spring-boot-starter-parent        2.1.4.RELEASE                 1.8        UTF-8        UTF-8        1.1.5        1.2.3                              tk.mybatis            mapper-spring-boot-starter            ${tk.mybatis.version}                                     com.github.pagehelper            pagehelper-spring-boot-starter            ${pagehelper.version}            

启动报异常如下:

Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1

Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.AbstractStringBuilder.substring(AbstractStringBuilder.java:908)
at java.lang.StringBuilder.substring(StringBuilder.java:76)
at tk.mybatis.mapper.mapperhelper.SqlHelper.getAllColumns(SqlHelper.java:247)
at tk.mybatis.mapper.mapperhelper.SqlHelper.exampleSelectColumns(SqlHelper.java:534)
at tk.mybatis.mapper.provider.ExampleProvider.selectByExample(ExampleProvider.java:96)
at tk.mybatis.mapper.provider.ExampleProvider.selectByExampleAndRowBounds(ExampleProvider.java:111)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at tk.mybatis.mapper.mapperhelper.MapperTemplate.setSqlSource(MapperTemplate.java:246)
... 29 common frames omitted

有说是版本不兼容的问题,有说什么MapperScan注解换成tk的,都不行,找了半天,原来是因为定义的数据实体类中没有定义任何属性造成的:

导致mapper扫描xml的时候,会去找对应的实体类,结果发现一个字段(列)都没有,于是就抛了异常

博主为什么会出现这种情况呢?

我搭框架的时候,会依据产品设计好Controller、Service和Dao层,Dao层的entity我只定义,里面的内容由具体的开发者填充,于是乎就出现了,架子搭好了却跑不起来的尴尬局面,解决的办法就是,entity实体类不要空,随便意思下,给个id即可:

"SpringBoot2.0整合tk.mybatis异常怎么解决"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

内容 实体 整合 情况 时候 更多 知识 UTF-8 不行 实用 尴尬 学有所成 接下来 产品 产品设计 办法 困境 字段 实际 就是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 镇海计算机软件开发企业 sql数据库定时备份 梦想是软件开发 广联先锋网络技术有限公司 福建先锋网络技术有限公司 海狮计划软件开发 兰州软件开发技术项目实训中心 移动互联网科技发展现状 郎溪库存软件开发服务商家 华三服务器关闭cpu节能 max数据库文件太大 重庆汉邦网络技术有限公司 卡巴基斯网络安全实时地图 网络安全防护技术发展历程 华硕路由器增加打印服务器 access数据库中掩码是什么 还尚未备份数据库的日志尾部 软件开发结账 cs1.6僵尸服务器 魔兽世界服务器类型怎么选择 成都软件开发成功柚米科技 运维 服务器资源管理平台 海康威视电子警察前端服务器 网络安全公司哪个品牌好 服务器内存条的分类 怎样快速打开一台电脑的数据库 计算机网络安全问题论文 网络安全专业英语单词 青岛服务器电源 山东省软件开发人员测算依据
0