1.
每一个Mapper都需要在Mybatis核心注册文件中注册,在核心配置文件中添加,同时,resource中必须为 地址/地址/地址 而不是地址.地址.地址
<mappers>
<mapper resource="Mapper/UsrMapper.xml/>
</mappers>
同时对于mapper映射器
使用 mapper 接口类路径
如:
此种方法要求mapper 接口名称和mapper 映射文件名称相同,且放在同一个目录中。
使用相对于类路径的资源
如:
注册指定包下的所有 mapper 接口
如:
此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中
2.
Could not find resource org/mybatis/example/mybatis-config.xml
由于Maven中约定大于配置,我们编写的配置文件可能无法导出或生效,在pop.xml文件中导入
同时观察mapper.xml是否在target下,若不在将其放在resource目录中,随后在该目录中的pop.xml文件中添加
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
随后右上角maven,对应模块clean,packet
3.
同时,在mysql依赖版本为8.0.22时,需在核心配置文件的url后加amp;serverTimezone=CTT,此要求延续至哪个版本尚未可知,至少目前最新8.0.33并未使用
4.
舍友遇到的问题,在父文件中直接写入功能,同样会出现could find resource的情况,看该模块的pop.xml文件中是否有
<packaging>pom</packaging>
改正方法:
将pom改成jar,或者创建子模块重写代码
同时在spring-mybatis中同样遇到了上述2类型的问题,解决方法依旧相同