自己挖的坑跪着也要填完---mapper配置文件和java源文件在同一包下
本来准备研究下mybatis源码执行流程的,就随意搭建了个项目,所有配置如下:
一切看似都是那么的正常,然而执行的时候:Exception in thread "main" org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.nijunyang.mybatis.mapper.UserMapper.insertUser
1.发现org.apache.ibatis.session.Configuration#mappedStatements始终是空的,等于说mapper文件的类容根本没有被加载解析
2.org.apache.ibatis.builder.annotation.MapperAnnotationBuilder#loadXmlResource加载xml根本没有加载到
3.文件路径看似都是对的,但是却加载不到文件流org.apache.ibatis.io.Resources#getResourceAsStream(java.lang.ClassLoader, java.lang.String)
各种找问题,以为是名字不对等等,重新写各项配置,结果还是不行。最后恍然大悟,这配置文件是用classloader加载的,遂检查jar包(class目录)发现mapper.xml文件根本没有编译进去,再看pom文件,资源文件的打包配置空空如也。
所以看似正常的xml文件路径,实则并不正常,因为在jar/class里面并没有将配置文件打进去
因此在源文件包里面写配置,pom文件一定要注意加上打包资源的配置
因此在源文件包里面写配置,pom文件一定要注意加上打包资源的配置
因此在源文件包里面写配置,pom文件一定要注意加上打包资源的配置
默认的编译只会将java源文件编译出来的class文件打包走,而不会打包其他文件,撸上<resources>节点万事大吉
自己挖的坑跪着也要填完---mapper配置文件和java源文件在同一包下的更多相关文章
- 挖个坑,写一个Spring+SpringMVC+Mybatis的项目
想挖个坑督促自己练技术,有时候想到一个项目,大概想了一些要实现的功能,怎么实现.现在觉得自己差不多能完成QQ空间的主要功能了.准备立个牌坊,写一个类似功能的网站.并且把进度放到这里来. 初步计划实现以 ...
- webapi 给自己挖的坑
这次做项目,负责开发web api. 自己给自己挖了个坑.在所有的api接口前面都加上一个static . 结果检查路由配置.代码等等都找不到问题所在. 最后在一个同事的提醒下,原来是static给惹 ...
- 《深入理解Java虚拟机》第2版挖的坑终于在第3版中被R大填平了
这是why技术的第34篇原创文章 本周还是在家办公的一周,上面的图就是我在家的工位,和上周<Dubbo Cluster集群那点你不知道的事>这篇文章里面的第一张图片比起来,升级了显示器支撑 ...
- C++模板元编程 - 挖新坑的时候探索到了模板元编程的新玩法
C++真是一门自由的语言,虽然糖没有C#那么多,但是你想要怎么写,想要实现什么,想要用某种编程范式或者语言特性,它都会提供. 开大数运算类的新坑的时候(又是坑),无意中需要解决一个需求:大数类需要分别 ...
- JAVAFX之tableview界面实时刷新导致的内存溢出(自己挖的坑,爬着也要出来啊0.0)
这几天遇到了一个问题,不幸开发的一个cs架构的工具,客户端开启后,内存一直在缓慢增长最终导致进程卡死,花了4天时间,终于爬出来了... 客户端通过timer定时器每30秒查询一次数据库以及一些业务逻辑 ...
- IOS - NSDate 自己挖的坑,自己跳
NSDate:5是坑啊啊! NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDat ...
- 关于MySQL redo log,挖些坑,慢慢填
1. 为什么可以设置为多个redo log ? (innodb_log_files_in_group,默认值和推荐值都是2,我们线上设的统一为4): 2. 什么条件下会触发刷脏?除了master_th ...
- HDU 2089 不要62(挖个坑=-=)
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- wikioi3363支线剧情(挖个坑,不会做。。。)
3363 支线剧情 题目描述 Description 宅男JYY非常喜欢玩RPG游戏,比如仙剑,轩辕剑等等.不过JYY喜欢的并不是战斗场景,而是类似电视剧一般的充满恩怨情仇的剧情.这些游戏往往都有很多 ...
随机推荐
- BSD介绍
BSD许可证模板 * Copyright (c) 1998, Regents of the University of California * All rights reserved. * ...
- 罚函数(penalty function)的设计
1. encourage sparsity ℓ0 范数: non-differentiable and difficult to optimize in general ℓ1 范数: 对数约束,log ...
- WPF: FishEyePanel/FanPanel - 自定义Panel
原文:WPF: FishEyePanel/FanPanel - 自定义Panel 原文来自CodeProject,主要介绍如何创建自定义的Panel,如同Grid和StackPanel. 1) Int ...
- Qt编程中QDiaog的ESC键(按下Esc键会默认调用reject()方法)
最近使用QDialog时,按了下Esc键,导致QDialog被关闭,而后续的数据处理出现了问题.原来在QDialog中按下Esc键会默认调用reject()方法而不是closeEvent(QClose ...
- WPF Path实现虚线流动效果
原文:WPF Path实现虚线流动效果 最近闲来无事,每天上上网,看看博客生活也过得惬意,这下老总看不过去了,给我一个任务,叫我用WPF实现虚线流动效果,我想想,不就是虚线流动嘛,这简单于是就答应下来 ...
- jquery 标签页
<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...
- WPF之VirtualizingStackPanel.IsVirtualizing="False"
原文:WPF之VirtualizingStackPanel.IsVirtualizing="False" 相信从winform转到wpf的人都遇到过这样的困惑,在处理DataGri ...
- mysql索引创建&查看&删除
1.索引作用 在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率.特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍. 例如,有 ...
- VS2008下QT整合OGRE
环境配置如下:VS2008 QT版本:4.8.1 OGRE版本: 1.7.4 请先配置好QT for vs2008 : 下载QT VS2008的包,然后下个QT VS的插件 版本必须是VS2008 ...
- Delphi berlin ShowMessage的改进与使用
这个版本的delphi对ShowMessage进行了重新实现,更好的适应移动跨平台,即在移动平台下是异步执行的,而在Windows及os X下是同步执行的,如果自己控制是否异步显示对话框,也可以通过T ...