spring 结合mybatis的那些坑

本文分享了在使用MyBatis过程中遇到的常见问题及解决方案,包括XML映射文件未被正确打包、逆向生成的基础CRUD缺失以及实体类未实现Serializable接口等问题。通过调整pom.xml配置、更换数据库驱动版本和修改自动生成配置,成功解决了这些问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

废话就不多说了,搭建过程中遇到不少坑:(2和3可能和使用的工具有关,我使用的是idea)
1.是报statement invalidate bound,排除常规的可能犯得错误之后(例如namespace是否对应,mapper是否加载等等),发现我的mapper对应的xml文件自动是生成在src/main/java目录下面的,这就意味着打包的时候是不会被打包进去的,所以 一直找不到
解决:(把xml打包进去,在pom中加入配置)

<build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes><include>**/*.xml</include></includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
    </build>

2.通过mybatis逆向生成的mapper中没有基础的增删改查,要不生成的就是那种很复杂的增删改查(就是有Example后缀的),当然还是基础的错误排除后,什么自动生成配置文件的各种检查(里面的table标签的属性检查)都没有用,后来发现是数据库驱动问题,换个低版本的就好了(我用的是mysql的数据库驱动5.xxx版本)
3.就是mybatis自动生成的实体类没有继承自Serializable,这个就会照成对象不能够再网络中传输,解决办法在,自动生成的配置文件中加一句:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值