第十三篇:SpringBoot 2.x整合Mybatis以及通用Mapper的问题
今天听说在SpringBoot整合mybatis和通用mapper的时候会产生一个奇怪的问题,即执行sql语句的时候会找不到主键,比如下面这个样子
明显看到id这个列并没有被查询到,第一反应是先去查看User
类
然而并没有什么问题,该标识的都标识了,然后又去查了一波dao
层
···根本不可能出现问题嘛,然后绞尽脑汁的考虑的各方面的问题,怀疑是版本问题甚至把tk.mapper
的2.x版本挨个下载完了,但是,并没有什么用。
就在我怀疑人生的时候,突然瞟了一眼User
类,灵光一闪,改造成了如下的款式
看得出来区别吗?在这里我仅仅是把id
从 int
类型 转为了 Long
类型居然就好了???
。。。

timg.jpg
具体情况还不清楚,我已经准备潜伏到
tk.mapper
的群里问个明白,等搞清楚了再更新
更新 2018.11.21
在github的文档上找到了
默认情况下,简单类型会被识别为表中的字段,但是,不 包 含
Java
的 基 本 类 型

timg (1).jpg
继续翻翻文档,发现下面有一项配置可以支持基本类型usePrimitiveType=true
总结
虽然之后找到了解决方案,但同时也发现了对应的问题
使用基本数据类型就会有默认值,而在
Mybatis
中经常会判断属性值是否为空,为了避免这样的问题最好在类中声明属性时都使用包装类
__EOF__

本文作者:Gabriel
本文链接:https://www.cnblogs.com/youarephoenix/p/15972918.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/youarephoenix/p/15972918.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~