关于MyBatis重复指定Mapper报错

手敲MyBatis(十一章)-支持注解配置执行SQL 这一章节从题目中也看出来我们要支持注解版的增删改查,可以在Mapper层的接口类的方法上写Sql语句,如:Insert,Update,Delete,Select的这几个基础Sql,如下图,这样就不用在Xml里去写Sql了,但是这就引申出一个问题,我们怎么解析注解的Sql语句,将方法上的SQL内容取出来并按之前的既定流程去处理执行Sql呢?我们现在要处理以下几步才能达到目的1.配置文件中去配置注解类,加上此在解析的时候才能知道什么情况下用XML方式,在什么情况下用注解方式。 阅读详情

在MyBatis中,在写完Mapper.xml或绑定了对应的接口之后,我们需要去MyBatis.xml,即配置文件中去指定Mapper.xml或接口,指定的方式有四种,可以参考MyBatis官方文档。

如果在MyBatis.xml中,指定了Mapper.xml,然后又指定了它对应的接口,那么就会报错。
错误信息如下:

Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession.
### The error may exist in com/mybatis/mapper/UserMapper.java (best guess)
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.binding.BindingException: Type interface com.mybatis.mapper.UserMapper is already known to the MapperRegistry.

MyBatis.xml文件指定信息:

<mappers>
	<!--指定Mapper.xml文件-->
    <mapper resource="com/mybatis/mapper/UserMapper.xml"/>
    <!--注解Mapper接口-->
    <package name="com.mybatis.mapper"/>
</mappers>

只需要保留一个指定即可。

MyBatis反向插件生成的mapper中有重复resultMap的解决办法 MyBatis Generator生成重复xml/Mapper对象解决方案_树洞-优快云博客 引用了这一篇博客,我解决问题是通过在generatorConfig.xml里的table标签里添加catalog,指定数据库名 <table tableName="Team" catalog="ssm1"> <property name="useActualColumnNames" value="true"/> </t. 阅读详情

相关推荐

MyBatis/MyBatis-Plus Invalid bound statement 报错全解析与排查指南

在Java持久层开发中,ORM框架通过将对象与数据库表进行映射,简化了数据操作。其核心原理在于建立接口方法与SQL语句之间的绑定关系,这极大地提升了开发效率并保证了类型安全。MyBatis作为一款广泛使用的半自动化ORM框架,其技术价值在于提供了灵活的SQL编写能力和细致的映射控制。在实际应用场景中,开发者常会遇到SQL映射绑定失败的问题,具体表现为“Invalid bound statement (not found)”错误。这一问题尤其在涉及**Maven资源过滤**和**多数据源配置**时频繁出现。本

weixin_34111790的博客 436

springboot报错汇总 3

1.sql语法异常 注入异常报错 org.springframework.jdbc.BadSqlGrammarException: Error querying database. Cause: java.sql.SQLSyntaxErrorException: Unknown column ‘project_name’ in ‘field list’ The error may exist in com/turing/wbs/mapper/WbsPlanMapper.java (best guess)

LuckyJerry66的博客 2246

Mybatis的Mapper中的方法为什么不能重载?

前言 在初入门Mybatis的时候可能都犯过一个错误,那就是在写Mapper接口的时候都重载过其中的方法,但是运行起来总是报错,那时候真的挺郁闷的,但是自己也查不出来原因,只能默默的改了方法名,哈哈,多么卑微的操作。 今天就写一篇文章从源码角度为大家解惑为什么Mybatis中的方法不能重载? 环境配置 本篇文章讲的一切内容都是基于Mybatis3.5和SpringBoot-2.3.3.RELEASE。 错误示范 举个栗子:假设现在有两个需求,一个是根据用户的id筛选用户,

java_xiaoo的博客 784

MyBatis中运用注解进行开发出现错误

错误代码如下: org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. ..

weixin_50846239的博客 1789

ThingsBoard入门实战(七):公共发布和 UI 细节修改

公共发布和 UI 细节修改7.细节修改和公共发布一、公共发布二、UI优化下载运行修改三、下一步还可以做什么?更好的UI更丰富的系统模块 7.细节修改和公共发布 GET到新技能了,想给兄弟们演示,需要给他们每个人一个账号么? 答案肯定是:不需要! ThingsBoard 用 公共发布 解决了这个问题。 一、公共发布 首先我们来看一下路灯设备现在在谁名下? 如下图,路灯都是customerA的, 目前只有它和它的租户可以看到,其他人需要看就需要设为公有。 如图操作: 对于设备详情仪表盘,我们也需要设为公有

AIGC搞起 9116

看不懂分子动力学模拟的结果?一文读懂RMSD曲线

随后,将每一帧结构与初始模板进行叠合,计算对应原子的平均偏移量,即RMSD。总之,掌握 RMSD 的解读方法,就等于抓住了评估分子动力学模拟成败与质量的“总开关”。①在模拟初始阶段,RMSD会从0迅速上升,这是蛋白质从静态晶体或模型结构释放到溶液环境中并逐渐适应的正常过程。②经过一段时间后,曲线不再系统性上升或下降,而是围绕一个平均值,小幅度地上下波动,形成一个稳定的“平台”。这种情况下,RMSD 在初始快速上升后,并未进入平台,而是持续甚至加速上升,始终未见收敛。🔍 如何解读不同趋势的RMSD曲线。

weixin_46587777的博客 4886

Mybatis遇坑

之前学习中使用的是xml配置,想换成注解配置试一试结果一直报错 Mapped Statements collection already contains value for cn.myp666.dao.UserDao.findAll. please check cn/myp666/dao/UserDao.xml and cn/myp666/dao/UserDao.java (best gues...

学习笔记 1332

ubuntu20.04开机黑屏卡在/dev/sda1:clean,***files,***blocks,解决心得记录

这个问题如果你百度,会发现目前有很多种解决方法。 有更新显卡驱动的,有卸载上一次安装软件的,还有各种奇奇怪怪的故障原因。 如果你是属于上述情况,那么按照百度和论坛的各种指引操作一般都能解决。 但我这里主要说一种特殊情况,就是我什么也没有操作,我什么也没干。就是正常使用系统关了机突然就报错了。 这也是自己亲自遇到的问题,做个小记录方便以后自己回顾。 上一次出现这种情况我重装系统了,这次用了两个月又出现了,重装成本太高,我接受不了,于是找到解决办法。 首先找个终端进入,进入终端的方法很多,用安装u盘

qq_41517017的博客 2万+

学习mybatis中遇到的小问题

今天在编写代码时,出现了 org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession. ### The error may exist in com/yc/dao/FilmMapper.java (best guess) ### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration

Harswlgb的博客 490

无人机飞控算法开发实战:从零到一构建企业级飞控系统

本文系统介绍了无人机飞控算法开发的完整流程,包括飞行动力学模型建立、传感器校准与数据融合、主流控制算法实现(PID、ADRC、EKF)以及企业级飞控系统架构设计。通过结合开源飞控框架(如PX4)和实际工程经验,提供了完整的代码实现示例,帮助学者从零开始掌握无人机飞控开发的核心技术。文中详细讲解了四旋翼无人机的动力学模型、传感器校准方法、EKF状态估计算法、PID和ADRC控制算法的实现,以及MAVLink通信协议的集成。最后,总结了完整的飞控系统开发流程和未来发展趋势。

全栈 3401

光模块基础知识【快速入门】02

光模块是用于交换机与设备之间传输的载体,是光纤通信系统中的核心器件。主要作用是发射端将设备的电信号转换成光信号。 光纤通道光模块和以太网光模块 光纤通道光模块 光纤通道(FC, Fiber Channel)是一种高速网络数据传输协议。光纤通道协议可以有序无损地传输原始数据,它主要用于在数据中心、电脑服务器、交换机与存储网络中进行数据传输。 FC光模块遵循FC协议,充当着光纤通道系统之间的接口,也是光纤存储网络设备间的接口。它们主要用于数据中心的光纤通道存储网络链接中。 FC光模块具有小型化和低.

Jin Hanquan的博客 3万+

MyBatis的mapper里有重复ID时报错

关于环境搭建,请参考我另一篇文档“Spring整合MyBatis”,唯一区别是把

duke_ding2的博客 992

Python气象数据处理实战:用PyCINRAD轻松绘制雷达PPI图像(附避坑指南)

本文详细介绍了如何使用Python库PyCINRAD处理中国CINRAD系列天气雷达的基数据,并绘制专业的PPI图像。内容涵盖从环境配置、数据读取、核心绘图到高级定制与批量处理的完整流程,并针对安装依赖、中文乱码、数据范围等常见问题提供了实用的避坑指南,帮助气象工作者高效完成雷达数据可视化。

dog123的博客 221

mybatis generato 生成的mapper映射xml出现重复代码

最近学习了mybaties ,学习了使用mybatis generator自动生成映射mapper.xml文件, 使用流程是首先创建maven项目, 在resources生成 mybatis-generator-config.xml配置文件 内容如下: <?xml version="1.0" e...

qq_40600414的博客 1262

腾讯滑块验证码防水墙 tdc.js 补环境实录

腾讯滑块验证码破解研究摘要 本文记录了破解腾讯防水墙滑块验证码(tdc.js)的全过程。研究重点包括: 流程分析:通过抓包分析验证码完整链路,识别出关键参数collect和eks需从tdc.js虚拟机获取 环境模拟:采用渐进式补环境方法,针对字节码虚拟机特性构建完整的window对象,包括navigator、screen、canvas等API的精确模拟 核心破解:成功调用TDC.getData()和TDC.getInfo()获取关键参数,解决POW计算和滑块缺口识别问题 优化调整:针对errorCode 5

码王吴彦祖的博客 225

FC7300 SPI MCAL配置引导

Example - QMI8A01z外设:Example - QMI8A01z外设:

舊梦的博客 257

mybatis绑定多个mapper,@ResultMap 报错: Mapped Statements collection already contains value for xxx

mybatis绑定多个mapper,@ResultMap 报错: Mapped Statements collection already contains value for xxx 最近遇到一个奇葩的问题,主要是之前没遇到过。 检查了 id,没有重复的,检查了parameterMap等常规错误,没发现问题。

On the way ..... 1万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Mybatis报错——Type interface com.mapper.EmployeeMapper is already known to the MapperRegistry.

Mybatis报错——Type interface com.mapper.EmployeeMapper is already known to the MapperRegistry. 先说我发生这个错误的原因吧:EmployeeMapper.xml映射文件被单独注册一次,批量注册的包中包含也EmployeeMapper.xml动态绑定的EmployeeMapper.java。也就是说Employ

kingscoming的博客 7072

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Mybatis Generator逆向生成代码,mapper中sql语句重复

org.springframework.core.NestedIOException: Failed to parse mapping resource: ‘file [XXX.xml]’; 在使用idea中tomcat启动时报错,说mapper.xml不能创建,不能创建beanname,结果检查后发现是由于,使用因为使用Mybatis Generator逆向生成代码,运行了多次而重复生成了Res...

xiaoblank的博客 1304

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

mybatis-generator 生成mapper文件,代码重复问题

原因 在使用,generator时,多次生成重复, 导致mapper文件内容重复,运行代码时,控制台报错。 解决 在generatorConfig.xml配置文件中,添加如下代码: <!--每次启动覆盖原有的Mapper--> <plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin"/> ...

居無何的博客 473

mybatis学习之原始开发DAO与mapper代理开发DAO的区别

1、SqlSession使用的范围 1.1 SqlSessionFactoryBuilder 通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory 将SqlSessionFactoryBuilder当成一个工具类来使用,不需要使用单例模式管理SqlSessionFactoryBuilder。 在需要创建SqlSessionFactory时,只需

属于Alex的Java小世界 1万+

mysql逆向工程mapper_mybatis逆向工程生成mapper报错

Result Maps collection already contains value for xxxMapper.BaseResultMap错误解决办法一、问题描述今天在做项目时,遇到一个错误:“Result Maps collection already contains value for com.xxx.dao.tb_userMapper.BaseResultMap”最简单的方法就是将...

weixin_35318685的博客 487

解决 mybatis generator 覆盖生成mapper.xml时,xml中内容重复的问题

问题: 使用mybatis generator生成mapper.xml时,如果原来已经存在该Mapper.xml,再次生成时(比如开发过程中修改了数据库,需要重新生成pojo和mapper),会出现Mapper.xml中内容重复的问题。、 解决方法: 高版本mybatis(如1.3.7)中,已经修复该问题了, 如果使用的是低版本的mybatis,可以参考高版本mybatis的代码,自行改造mybatis的jar包。 mybatis-generator-core-1.3.7.jar中代码: 低版本中,Gen

web13985085406的博客 1271

Mybatis的Xml映射文件中,不同Xml映射文件,id是否可以重复详解

Mybatis的Xml映射文件中,不同Xml映射文件,id是否可以重复? 不同的Xml映射文件,如果配置了namespace,那么id可以重复;如果没有配置namespace,那么id不能重复. (不管是什么id,即使不是同种类型,譬如说查询的id跟更新的id不一样也不行.反正就是所有id都不能重复,因为id就是一个标识) 个人批注:问题的意思应该是在不使用mapper接口编程的时候,...

qq_40245464的博客 9487

关于指定逆向工程生成Mapper文件内容重复

用指定逆向工程文件生成内容后,内容是这样的 然后就开始了测试里面生成的方法, 但是一运行就报错 org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession. ### The error may exist in com/dao/AdminMapper.xml ### The error occ...

weixin_44209716的博客 525

Mybatis:基础知识2-mapper代理

mybatis开发dao的方法 SqlSession作用范围 是使用局部变量、成员变量??? SqlSessionFactoryBuilder SqlSessionFactoryBuilder 是以工具类方式来使用,需要创建sqlSessionFactory就new一个SqlSessionFactoryBuilder。 sqlSessionFactory 正常开发时,以单例...

琦彦 9259
上一篇: 关于MyBatis读取Mapper文件的一个坑
下一篇: 线程池概述
XIACYBING
博客等级 码龄10年 1粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值