一、问题现象

1,No bean named 'bomManageMapper' found in org.springframework.beans.factory.support.DefaultListableBeanFactory@.........

2,我把代码中引用的bomManageMapper全部注释掉,又会出现另外一个Mapper对象找不到

3,但是奇怪的是,有两个项目启动的时用到的Mapper对象可以找到,发现这两个Mapper对象是在项目的core包下面,而其他找不到的Mapper对象都在interfaces包下面;

二、寻找答案

1,怀疑是昨天修改了什么东西,导致的这个问题(具体也记得不清楚了,所以版本控制真的很重要,而且做好是每天都要提交);

2,试图还原昨天的修改,删除一些新增内容,但是问题依旧;

就这样折腾了一上午;

三、解决

打开了spring的配置文件看看,有这一行,扫描Mapper和dao类:

    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"    p:basePackage="com.skysport.*.dao" p:sqlSessionFactoryBeanName="sqlSessionFactory" />

就是这个dao,突然想到,昨天把interfaces的包中的‘dao’文件夹重命名为‘mapper’,而core包中的还是dao包,好吧,问题原因找到了。

重命名core包中的dao包为mapper包,重启服务,恢复正常;

四、一点思考:

1,关于定位问题:

如果之前没有出现,而是做了某些修改后,才出现的问题,那么肯定是修改动作导致的。

2,关于版本控制:

养成按天提交代码的习惯,这样可以对比出来每天修改的内容,便于定位问题;

3,关于修改:

在修改一项内容时,一定要评估它带来的影响有多大,我觉得可以从两个角度去衡量:

a),可量化的:修改一项内容,如果直接影响到很多文件修改,那么一定要慎重,要评估风险(例如:是否每个涉及到的地方都修改了)

b),不可量化:例如修改了代码的加锁机制,可能影响的就一、两个类,那么就要靠开发者的自身能力和足够的测试去规避风险了。

奇葩问题:spring+mybaits项目突然出现其中一些Mapper类找不到的更多相关文章

  1. 关于Android项目中,突然就R类找不到已存在的资源文件的解决方法

    项目代码早上打开正常,下午开的时候突然提示R类找不到已存在的布局文件,于是试了各种方法,CLEAN啊,重启啊,均无效,然后去网上搜了下,遇到这个问题的人还不少. 看到其中有这么一条解决方法,删除导入的 ...

  2. spring boot项目如何测试,如何部署

    有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发.调试.打包到最后的投产上线. 开发阶段 单元 ...

  3. Eclipse创建第一个Spring Boot项目

    一.安装SpringBoot插件 安装过程需要联网下载插件,属于在线安装,请耐心等待安装完成,下载安装完成以后,需要重启Eclipse 二.创建Spring Boot项目 如下图所示new-other ...

  4. Spring整合Redis&JSON序列化&Spring/Web项目部署相关

    几种JSON框架用法和效率对比: https://blog.csdn.net/sisyphus_z/article/details/53333925 https://blog.csdn.net/wei ...

  5. 错误: 找不到或无法加载主类(IDEA中启动spring boot项目)

    版权声明:本文为博主原创文章,如果转载请给出原文链接:http://www.jufanshare.com/content/142.html 提示:需要对IDEA编辑工具使用熟悉 出现一个问题,就是sp ...

  6. 使用IDEA创建Spring boot项目,继承mybaits。并进行简单的数据库查询操作

    本文讲的是使用IEDA创建Spring boot项目,对于环境安装需要自行准备,如JDK1.8.Maven 3.3.IDEA编译器.Mysql5.7等需事前准备好. 1.创建Spring boot项目 ...

  7. spring+mybaits xml配置解析----转

    一.项目中spring+mybaits xml配置解析 一般我们会在datasource.xml中进行如下配置,但是其中每个配置项原理和用途是什么,并不是那么清楚,如果不清楚的话,在使用时候就很有可能 ...

  8. 简单的Spring Boot项目——实现连接Mysql数据库

    一.创建Spring Boot项目 参考:使用IntelliJ IDEA创建简单的Spring Boot项目 二.数据库.表的创建 三.项目开发 3.1 pom.xml文件配置 <?xml ve ...

  9. IntelliJ IDEA上创建maven Spring MVC项目

    IntelliJ IDEA上创建Maven Spring MVC项目 各软件版本 利用maven骨架建立一个webapp 建立相应的目录 配置Maven和SpringMVC 配置Maven的pom.x ...

随机推荐

  1. Comparator TreeSet

    package study; import java.util.Comparator;import java.util.TreeSet; public class TreeSetTest { publ ...

  2. Get Start StrangeIOC for Unity3D

    好久没有发blog了,因为只发原创内容,而去年发布的那几篇后来发现随便百度到处都是转载的或者各种网站自动扒的,我觉得既然大家都不尊重这种东西就没必要发上来了!不过由于工作原因最近在看Unity的一个I ...

  3. WPF/MVVM 快速开发

    http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial 这篇文章醍醐灌顶,入门良药啊! Introductio ...

  4. 禁用谷歌字体解决WordPress访问速度过慢问题

    这几天打开网站的时候发现突然变慢了,一直等待加载fonts.googleapis.com,搜索了一下发现很多wordpress网站都出现了 这种现象,原来是因为今日谷歌全线退出中国,貌似谷歌.Gmai ...

  5. 【6】使用nginx

    sudo vim /etc/nginx/nginx.conf user root; worker_processes 2; error_log /var/log/nginx/error.log; pi ...

  6. set(二叉搜索树)

    找球号(一) 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 在某一国度里流行着一种游戏.游戏规则为:在一堆球中,每个球上都有一个整数编号i(0<=i<= ...

  7. c链表结点的删除和添加

    #include<stdio.h> #include<stdlib.h> typedef char datetype;/*定义新的数据类型名*/ typedef struct ...

  8. SQL Server索引 - 索引(物化)视图 <第九篇>

    一.索引视图基本概念 索引视图实际上是一种将一组唯一值“物化”为群集索引形式的视图,所为物化就是几乎和表一样,其数据也是会存储一份的(会占用硬盘空间,但是查询速度快,例如可以将count(),sum( ...

  9. css案例学习之div a实现立体菜单

    效果 代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  10. css案例学习之双斜角横线菜单

    效果 代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...