Intelij IDEA中Mapper.xml无法构建到资源目录的问题
问题场景:
在尝试把原本在eclipse上的Java Web项目转移至Intelij idea上时,在配置文件均与eclipse一致的情况下出现了如下报错:
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): cn.umbrella.crm_core.settings.mapper.UserMapper.selectUserByAccandPwdat org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:229)at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:53)at org.apache.ibatis.binding.MapperProxy.lambda$cachedInvoker$0(MapperProxy.java:96)at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708)at org.apache.ibatis.util.MapUtil.computeIfAbsent(MapUtil.java:36)at org.apache.ibatis.binding.MapperProxy.cachedInvoker(MapperProxy.java:94)at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:86)at jdk.proxy4/jdk.proxy4.$Proxy38.selectUserByAccandPwd(Unknown Source)at cn.umbrella.crm_core.settings.service.impl.UserServiceImpl.queryUserByAccandPwd(UserServiceImpl.java:27)at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)at java.base/java.lang.reflect.Method.invoke(Method.java:580)at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:354)...
问题描述
在eclipse中,我们的项目结构如图所示,即Mapper.xml跟Mapper接口都放在src/java目录下,项目部署tomcat后运行没有任何问题,但是到了IDEA中,项目就无法找到Mapper.xml文件,在反复确认了SpringMVC及MyBatis配置文件无误的情况下,问题仍然无法解决。
原因分析:
eclipse在编译项目时会按照applicationContext-datasource.xml中配置的Mapper扫描器对Mapper.xml进行扫描而Intelij IDEA不会,这其实是两者的Tomcat部署方式不同。也就是说默认情况下,eclipse是热部署,而IDEA不是,IDEA需要先用Maven将项目构建为war包,然后复制到Tomcat等webapps目录下才能运行,而这个构建过程中,由于src/main/java不是资源目录,所以mapper.xml不会被打包至target目录中。
eclipse配置tomcat时是本质上是映射了一个tomcat的镜像在.metadata的serer.core目录下,每创一个tomcat,就生成文件名为“tmp编号”的tomcat的映射文件,创建的镜像和源tomcat就没有关系,eclipse是通过这个镜像的tomcat去运行项目。
IDEA是先把项目进行构建打包,然后将war包复制到本地Tomcat的webapps目录下运行项目。
参照:Eclipse和IDEA配置Tomcat的区别
解决方案:
直接在src/main/resources目录下新建与src/main/java中mapper接口映射的目录,将mapper.xml文件转移至resources目录下,这样在applicationContext-datasource.xml中配置的Mapper扫描器地址可以不用改变。
<!-- mapper注解扫描器配置,扫描@MapperScan注解,自动生成代码对象 --><bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="cn.umbrella.crm_core.settings.mapper, cn.umbrella.crm_core.workbench.mapper"/><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/></bean>
另外,还有大佬提供了其他的解决方案,就是在pom.xml中配置资源目录的方法,参照下面的链接:
- (完美解决汇总)org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
- org.apache.ibatis.binding.BindingException Invalidbound statement (not found)的解决方案和造成原因分析
相关文章:
![](https://img-blog.csdnimg.cn/direct/ba99f14896724dbc9dbe95a6dfb518ea.png#pic_center)
Intelij IDEA中Mapper.xml无法构建到资源目录的问题
问题场景: 在尝试把原本在eclipse上的Java Web项目转移至Intelij idea上时,在配置文件均与eclipse一致的情况下出现了如下报错: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): cn.umbrella.crm_core.…...
![](https://img-blog.csdnimg.cn/direct/09659dbb4015496ea16e08c2508ce6bb.png)
2024.6.23周报
目录 摘要 ABSTRACT 一、文献阅读 一、题目 二、摘要 三、网络架构 四、创新点 五、文章解读 1、Introduction 2、Method 3、实验 4、结论 二、代码实验 总结 摘要 本周阅读了一篇题目为NAS-PINN: NEURAL ARCHITECTURE SEARCH-GUIDED PHYSICS-INFORMED NEURAL N…...
![](https://www.ngui.cc/images/no-images.jpg)
鸿蒙实战开发:网络层的艺术——优雅封装与搭建指南(中)
前言 在鸿蒙开发的广袤天地中,网络层的搭建与封装无疑是构建高效、稳定应用的基石。继上篇的探索之后,本文将继续深入网络层的优化之旅,揭秘如何通过类型转换器、请求查询附加器以及丰富的常量参数,将网络层的构建艺术推向一个新…...
![](https://www.ngui.cc/images/no-images.jpg)
docker in docker 连私有仓库时报错 https
背景 jenkins 是使用 docker 方式部署的, 在 jenkins中又配置了 docker 的命令, 使用的宿主机的 docker 环境, 在jenkins 中执行 docker 相关命令的时候报错 jenkinse0e7b943b6e4:/$ docker login -u admin -p Harbor12345 172.16.100.15:80 WARNING! Using --password via t…...
![](https://img-blog.csdnimg.cn/direct/815cd4e7d35e4fd6ad7c96760189ee51.png)
mac怎么压缩pdf文件,苹果电脑怎么压缩pdf文件大小
在当今数字化时代,PDF文件已成为广泛使用的文档格式之一。然而,PDF 文件可能会因其包含的图像、图形和其他元素而导致文件较大,这可能会影响文件的传输、存储和共享。因此,对 PDF 文件进行压缩以减小其文件大小是很有必要的。今天…...
![](https://img-blog.csdnimg.cn/40875cf5d84146ebada6f522d448b204.jpg)
兴顺物流管理系统的设计
管理员账户功能包括:系统首页,个人中心,管理员管理,驾驶员管理,物流资讯管理,车辆管理,基础数据管理 员工账户功能包括:系统首页,个人中心,物流资讯管理&…...
![](https://www.ngui.cc/images/no-images.jpg)
力扣(2024.06.21)
1. 54——螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix ,请按照顺时针螺旋顺序 ,返回矩阵中的所有元素。 标签:数组,矩阵,模拟 代码: class Solution:def spiralOrder(self, matrix: List[List[int]]) -&…...
![](https://www.ngui.cc/images/no-images.jpg)
飞机大战java
"飞机大战"是一种经典的射击游戏,通常在各种平台上都有实现,包括Java。如果你想要开发一个Java版本的飞机大战游戏,你可能需要考虑以下几个方面: 游戏设计:确定游戏的基本规则,比如玩家控制的飞机…...
![](https://www.ngui.cc/images/no-images.jpg)
Springboot的自动配置原理
文章目录 Springboot的自动配置原理?1. Spring Boot Starter 依赖2.SpringBootApplication注解3.自动触发配置4.Auto-configuration Classes5.条件注解6. 外部配置文件7. 优先级和排除总结 Springboot的自动配置原理? 1. Spring Boot Starter 依赖 Spring Boot 提供了各种 …...
![](https://img-blog.csdnimg.cn/direct/679b46ace8a54cc3b8c74e7f70b0b400.png)
Interview preparation--elascitSearch深分页问题
深度分页出现原因 当我们需要查询的数据页数特别大的时候,比如from size 大于10000 的时候,可能出现“window is too large” 异常,如下网图: 查询语句如下 { "query": { "bool": { "must": [ {…...
![](https://img-blog.csdnimg.cn/direct/5ccdcf84ba42489a829ce78ef5272542.png)
C语言笔试题:实现把一个无符号整型数字的二进制序列反序后输出
目录 题目 实例 方法一:直接交换 方法二:间接交换 拓展 题目 编写一个函数,将一个无符号整数的所有位逆序(在32位机器下) 实例 例如有一个无符号整数 unsigned int num 32; unsigned int 在32位系统中占4个字…...
![](https://www.ngui.cc/images/no-images.jpg)
elementplus如何实现dialog遮罩层外的元素可以被操作点击
elementplus如何实现dialog遮罩层外的元素可以被操作点击 element plus 组件库中的 dialog 组件可以说是使用频率最高的组件之一,它的效果是弹出一个对话框,外面默认会有一个蒙层。 现在我碰到的需求是,弹窗要正常显示,但是蒙层下…...
![](https://img-blog.csdnimg.cn/direct/af84bebbb80948ee8f028ad5a5cac229.png)
Springboot整合Kafka消息队列服务实例
一、Kafka相关概念 1、关于Kafka的描述 Kafka是由Apache开源,具有分布式、分区的、多副本的、多订阅者,基于Zookeeper协调的分布式处理平台,由Scala和Java语言编写。通常用来搜集用户在应用服务中产生的动作日志数据,并高速的处…...
![](https://www.ngui.cc/images/no-images.jpg)
kotlin——MVVM框架下的大型项目优化
目录 概要 优化思路 一、重构过长的Activity 二、优化臃肿的ViewModel 示例代码: 概要 在大型项目中,随着项目越做越大,activity和viewmodel的代码会越来越多,尽量保持Activity和ViewModel的代码精简和易于维护是非常重要的。个人…...
![](https://img-blog.csdnimg.cn/direct/4dda6d3266dc4e6b944bf2d394b4d771.png)
echarts实现折线图点击添加标记
文章目录 背景一、代码示例 背景 业务场景体现在功能层面主要两点, 折线图表设置点击事件点击事件与图标渲染标记绑定 对于节点没有被添加标记的可以,弹框提示添加标记,并提供标记内容输入框,已经添加过标记的点,点…...
![](https://img-blog.csdnimg.cn/direct/6f23be1cdc404b5c91bca8a575fbc783.png)
循环赛日程表
描述 n 2 ^ k个选手 每个选手必须与其他n-1个选手各赛一次每个选手一天赛一次比赛打n-1天 思路 k 3时的解 我们先进行假设:每个选手第一天和自己比,然后分解成4个子问题: (1)14号的第14天,对手1~4号; (2)14号的第58天&a…...
![](https://img-blog.csdnimg.cn/direct/f5e2bc858434484f831b3a12726a6e0e.png)
计算机网络:运输层 - 概述
计算机网络:运输层 - 概述 运输层的任务端口号复用与分用UDP协议首部格式 TCP协议面向字节流 运输层的任务 物理层、数据链路层以及网络层,他们共同解决了将主机通过网络互联起来所面临的问题,实现了主机到主机的通信。 网络层的作用范围是…...
![](https://img-blog.csdnimg.cn/direct/cccc5896f9c8406c818498d3e1ccb4cb.png)
使用阿里开源的Spring Cloud Alibaba AI开发第一个大模型应用
背景 前段时间看到Spring推出了SpringAI,可以方便快速的接入ChatGPT等国外的大模型,现在阿里巴巴也紧追脚步推出了Spring Cloud Alibaba AI,Spring Cloud Alibaba AI 目前基于 Spring AI 0.8.1 版本 API 完成通义系列大模型的接入。通义接入…...
![](https://img-blog.csdnimg.cn/img_convert/6586355a9a077935acf5687b8e01c768.png)
`THREE.PointsMaterial` 是 Three.js 中用于创建粒子系统材质的类。它允许你设置粒子系统的外观属性,比如颜色、大小和透明度。
demo案例 THREE.PointsMaterial 是 Three.js 中用于创建粒子系统材质的类。它允许你设置粒子系统的外观属性,比如颜色、大小和透明度。下面是对其构造函数的参数、属性和方法的详细讲解。 构造函数 const material new THREE.PointsMaterial(parameters);参数&am…...
![](https://img-blog.csdnimg.cn/direct/13c527e4b67f464e8a93942284ee91d8.png)
Android-Android Studio-FAQ
1 需求 2 接口 3 Android Studio xml布局代码补全功能失效问题 最终解决方案就是尝试修改compileSdk 为不同SDK版本来解决问题,将原本34修改为32测试会发现xml代码补全功能有效了! 参考资料 Android Studio xml布局代码补全功能失效问题_android studi…...
![](https://img-blog.csdnimg.cn/img_convert/bad2fa02379347fa66207cbf588984ea.png)
架构师指南:现代 Datalake 参考架构
这篇文章的缩写版本于 2024 年 3 月 26 日出现在 The New Stack 上。 旨在最大化其数据资产的企业正在采用可扩展、灵活和统一的数据存储和分析方法。这一趋势是由企业架构师推动的,他们的任务是制定符合不断变化的业务需求的基础设施。现代数据湖体系结构通过将数…...
![](https://img-blog.csdnimg.cn/direct/8c589475db644214b2630c4f6060dd79.png)
通讯协议大全(UART,RS485,SPI,IIC)
参考自: 常见的通讯协议总结(USART、IIC、SPI、485、CAN)-CSDN博客 UART那么好用,为什么单片机还需要I2C和SPI?_哔哩哔哩_bilibili 5分钟看懂!串口RS232 RS485最本质的区别!_哔哩哔哩_bilibili 喜欢几位…...
![](https://img-blog.csdnimg.cn/img_convert/6df94310095d83df5aaa6d25e3473a36.png)
基于EXCEL数据表格创建省份专题地图
1 数据源 随着西藏于5月1日发布2022年一季度经济运行情况,31省份一季度GDP数据已全部出炉。 总量方面,粤苏鲁稳居前三;增速方面,23省份高于“全国线”,新疆表现最佳,增速达到7.0%。 表格表现数据不够直观…...
![](https://img-blog.csdnimg.cn/direct/740d28adcc7040e8ae830adbebce8ac8.png)
基于java+springboot+vue实现的电商应用系统(文末源码+Lw)241
摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本电商应用系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&a…...
![](https://www.ngui.cc/images/no-images.jpg)
好文!12个策略解决 Kafka 数据丢失问题
哥们儿!有遇到Kafka数据丢失问题的问题吗,你是如何解决的?今天的文章,V哥来详细解释一下,整理了12种解决策略,希望可以帮助你解决项目中的问题:以下是一些常见的解决方案和最佳实践。 生产者确认…...
![](https://www.ngui.cc/images/no-images.jpg)
Android 第三方框架:网络:OkHttp:源码分析:拦截器
文章目录 涉及到的设计模式 责任链模式:ArrayList策略模式:Interceptor和XXXInterceptor源码分析API总结涉及到的设计模式 责任链模式:ArrayList ArrayList 用ArrayList作为保存顺序的数据结构 把系统提供的各种Interceptor和自定义的Interceptor放入ArrayList中 RealI…...
![](https://img-blog.csdnimg.cn/direct/e13f8aaf7adf4495bcbb30a05f4c3562.png)
FlowUs AI的使用教程和使用体验
FlowUs AI 使用教程 FlowUs AI特点使其成为提升个人和团队生产力的有力工具,无论是在学术研究、内容创作、技术开发还是日常办公中都能发挥重要作用。现在来看看如何使用FlowUs AI吧! 注册与登录:首先,确保您已经注册并登录FlowU…...
![](https://img-blog.csdnimg.cn/direct/2332303197bf4d6ba2ba59e0664d9c07.gif#pic_center)
SwiftUI 6.0(iOS 18)ScrollView 全新的滚动位置(ScrollPosition)揭秘
概览 在只有方寸之间大小的手持设备上要想体面的向用户展示海量信息,滚动视图(ScrollView)无疑是绝佳的“东牀之选”。 在 SwiftUI 历史的长河中,总觉得苹果对于 ScrollView 视图功能的升级是在“挤牙膏”。这不,在本…...
![](https://img-blog.csdnimg.cn/direct/01abe3b651a948e2afddd3f6f2013f1e.png)
阿贝云免费虚拟主机和免费云服务器评测
阿贝云是一家提供免费虚拟主机和免费云服务器的服务商,为用户提供了一个便捷的搭建网站和应用的平台。他们的服务受到了很多用户的好评。用户可以轻松地在阿贝云上创建自己的网站,并享受免费的虚拟主机和云服务器。通过阿贝云的服务,用户可以…...
![](https://img-blog.csdnimg.cn/img_convert/ba2a6f1d26f5518c46226d494d8ca2fb.jpeg)
不懂就问,开通小程序地理位置接口有那么难吗?
小程序地理位置接口有什么功能? 若提审后被驳回,理由是“当前提审小程序代码包中地理位置相关接口( chooseAddress、getLocation )暂未开通,建议完成接口开通后或移除接口相关内容后再进行后续版本提审”,那么遇到这种情况&#x…...
![](https://img-blog.csdnimg.cn/a23c48ab170e4c2eb10d9a401ed6f48d.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5rW36IulW01BVFJJWF0=,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
一个空间放几个网站/网络推广客服好做吗
set hive.cli.print.headertrue 1.设置前 2.设置后 3.进阶设置(点击下方链接查看) Hive sql查询结果显示表头(header)如何配置:只显示列名,不显示表名...
![](https://img-blog.csdnimg.cn/de30ef0ab2864a469dd8dd8eddb7b3d1.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA0ohB0ohh0ohy0ohv0ohu0ojguIjguLgg4Lia,size_17,color_FFFFFF,t_70,g_se,x_16)
网站制作上海/长沙网站优化对策
使用匿名函数(lambda表达式):使用lambda表达式就代表一个函数名称,也就是说不用再为函数重新创建一个名字了。(以前在使用函数的时候需要用def来定义一个函数名,而使用lambda表达式就不需要再创建函数名了&…...
![](https://images2015.cnblogs.com/blog/961371/201612/961371-20161204133740115-2762390.png)
有没有专门做帽子的网站/精准引流推广团队
1. 学生模块list页面 不能正常跳转 说是找不到stuid属性,但是我在entity里面和数据库建表的属性就是stuid;Grade模块代码一样,却可以正常运行 这是什么问题? <c:forEach items"slist" var"student"> &l…...
![](http://www.iwms.net/upload/2006_05/060530123461212.jpg)
做棋牌网站抓到会怎么量刑/朝阳网站建设公司
在前面我们已经完成了ActiveX控件的开发,接下来的就是发布它了。 首先,我们建立一个windows安装项目,并将ActiveX控件的主输出添加到项目输出中。然后,改动ActiveX控件的主输出文件,将其Register属性改为vsdrpCOM.如图…...
![](https://img-blog.csdnimg.cn/img_convert/8f406e830579b7c3b38b23bfa8a91f1c.png)
电气网站设计/搜索引擎是什么意思啊
目前职场中使用流程图或者思维导图梳理工作思路、制定工作规范已经成为了大家普遍认可的高效率工作方式。那去哪找制作流程图的工具呢?别找了,找不到了!最赞的流程图工具都在U妹这!一、ProcessOnProcessOn是一款网页版作图工具&am…...
![](/images/no-images.jpg)
网站开发手机充值接口/福州seo扣费
window window是浏览器的一个实例,在浏览器中,window对象又双重角色,它既是通过JavaScript访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象1 选择练习 1 关于BOM下列说法正确的是?(选择两项&am…...