本文最后更新于:4 个月前

MyBatis入门程序

问题说明

学习过程中遇到很多问题,记录一下。

Maven静态资源过滤问题

UWu9VU.png

<!--在build中配置resource,来防止我们资源导出失败的问题-->
<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
</build>

Junit测试时,可能会提示

org.apache.ibatis.binding.BindingException: Type interface com.melodyhub.dao.UserDao is not known to the MapperRegistry.

MapperRegistry是什么?

每一个Mapper.xml都需要在MyBatis核心配置文件中注册!!!

<!--每一个Mapper.xml都需要在MyBatis核心配置文件中注册!!!-->
<mappers>
	<mapper resource="com/melodyhub/dao/UserMapper.xml"/>
</mappers>

MySQL时区

由于MySQL底层是使用的时区是CST,跟中国时间相差挣好8个小时。

解决办法是在mybatis-config.xml中``jdbcurl`末尾加上,二选一即可:

&amp;serverTimezone=GMT%2B8
&amp;useTimezone=true&amp;serverTimezone=UTC
`

参考:https://blog.csdn.net/ziningyihao/article/details/90644295

MySQL驱动/版本问题

所有的代码都没有问题,但是就是连接不上数据库,经过排查,发现我的MySQL版本是8.0,驱动包是5.1.47,差距太大,不兼容。

将MySQL降级到5.7.29,问题解决。

解决Mybatis报错Could not find resource mybatis-config.xml

下午移植远程仓库项目的时候,控制台报错:

java.io.IOException: Could not find resource mybatis-config.xml

UIg1Yt.png

经过排查,发现是我没有一直夫工程的pom.xml文件。

Maven clean清除缓存,然后build,即可。

-解决Mybatis报错Could not find resource mybatis-config.xml

MyBatis问题解决Error building SqlSession.

UWh0kq.png

解决🐤

改为全类名com.melodyhub.pojo.User

MyBatis问题解决Error building SqlSession.


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!

给网站加入欢迎语音 上一篇
MyBatis入门程序 下一篇

 目录