刚开始学mybatis框架,运行的第一个程序就出现了错误,用测试类读取数据库表中数据的时候报错
错误原因1:UserMapper.xml中没有和接口进行绑定
解决方法:将namespace改成dao层(mapper层)的接口文件即可,我的接口的路径是java/com/xiaoma/mapper/UserMapper,所以对应的namespace为:com.xiaoma.mapper.UserMapper
错误原因2:项目读取不到java文件夹下的配置文件
解决办法:在项目的pom.xml文件添加如下代码
1 <!-- 设置资源目录,使其可以读取dao(mapper)下xml文件--> 2 <build> 3 <resources> 4 <resource> 5 <directory>src/main/java</directory> 6 <includes> 7 <include>**/*.properties</include> 8 <include>**/*.xml</include> 9 </includes> 10 <filtering>true</filtering> 11 </resource> 12 <resource> 13 <directory>src/main/resources</directory> 14 <includes> 15 <include>**/*.properties</include> 16 <include>**/*.xml</include> 17 </includes> 18 <filtering>true</filtering> 19 </resource> 20 </resources> 21 </build>
错误原因3:UserMapper.xml这个文件没有被加载到mybatis的全局配置文件中,也就是没在mybatis-config.xml中做映射
解决办法:在mybatis-config.xml文件中的configuration中添加如下代码(注意自己的UserMapper.xml文件路径)
1 <mappers> 2 <mapper resource="com/xiaoma/mapper/UserMapper.xml"/> 3 </mappers>
我的是因为原因3,忘记向全局配置文件添加子配置文件的映射了,报这个错主要也是这三种原因,我的添加mappers后成功运行
分类:
mybatis
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· 为DeepSeek添加本地知识库
· 精选4款基于.NET开源、功能强大的通讯调试工具
· DeepSeek智能编程
· 大模型工具KTransformer的安装
· [计算机/硬件/GPU] 显卡