MyBatis有一个非常头疼的问题,就是当Mapper XML写法定义错误的时候,系统起不来,但也不报错,始终卡到如下信息位置:
信息: Initializing Spring root WebApplicationContext
问题分析思路就不叙述了,直接说解决方法吧:
新建一个类,继承 org.mybatis.spring.SqlSessionFactoryBean 类,重载 buildSqlSessionFactory 方法,捕获 NestedIOException 异常,并打印异常,如下:
try { return super.buildSqlSessionFactory(); } catch (NestedIOException e) { e.printStackTrace(); // XML 有错误时打印异常。 throw new NestedIOException("Failed to parse mapping resource: '" + mapperLocation + "'", e); } finally { ErrorContext.instance().reset(); }
然后修改 spring 配置文件 org.mybatis.spring.SqlSessionFactoryBean 替换为刚才新建的类。
这样,当MyBatis解析Mapper遇到错误的时候就能输出到控制台了。
相关推荐
解决mybatis头文件报错 下载好压缩包 解压将文件放到本地文件夹 例如 D盘的哪个文件夹 D:\mybatis\ ;然后打开eclipse ->Window->prefenrence->XML->XML Catalog->User Specifiled Entreis->Add->Location(此处是你...
解压后先修改generator.xml相关信息,然后用cmd命令行使用,内有详细操作说明
我们看到, 直接在可视化工具里用SQL写 ccf.last_update_timestamp between TIMESTAMP '2019-12-13' AND TIMESTAMP '2019-12-13...但是在mapper文件中这么写就不可以了, 它会提示你varchar类型不能和日期类型进行比较
mybatis的sql.xml的配置说明
在User.xml 的配置文件中,mapper namespace="com.yihaomen.mybatis.inter.IUserOperation" ,命名空间非常重要,不能有错,必须与我们定义的package 和 接口一致。 运行这个测试程序,就可以看到结果了。 除非...
主要涉及写XML文件和读取...生成的GeneratorConfigXML修改jdbc驱动位置后可直接用使用eclipse的mybatis插件生成mapper接口和映射文件以及实体类。编码方式的不同,注意配置文件的中文注释可能报错,使用时删除即可。
mybatis自动生成插件,解压复制到代码中即可运行,需要手动配置代码生成路径
1.Spring Boot 选择Spring Initializr 2设置包名、项目名(注意不能有大写字母)、JDK版本(8)。 3.选择支持的包,可以...11.生成的三个文件:xxxMapper.xml,xxxMapper.java(这个文件需要添加注解@Mapper),xxx.java
基于我现在做的项目自定义生成Mapper配置文件的修改Mybatis-generator源码后的代码,算是改良的Generatorbar,结果Mapper在src下面的ReportMapper.xml文件,占据还是蛮多的,主要的配置文件是generator.xml,我测试...
其实也不是错,但是看着不舒服,所以还得解决这个问题。解决这个问题需要在web.xml 中的开始部位加入以下代码。 <param-name>spring.profiles.active <param-value>dev <param-name>spring.profiles....
可是Mybatis就可怜了,没有上面那些东西,在网上找,也有一些类似jpa的产品出现,但是总感觉不好用,所以干脆自己搞一个,不就写几个文件吗。 说明:生成的文件包括 实体:为每张表生成一个对应的实体 QueryModel...
解决跨域问题的方案 CORS 规范化的跨域请求解决方案,安全可靠 什么是cors 它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。 原理 简单请求 当浏览器发现发现的ajax...
我想使用resultMap 一对...下面展示一些 mapper.xml。 SELECT st.title as titlest ,st.info_text as info_text , sbt.title as titlesbt,sbt.icon as icon, sbx.text as text FROM `services_title` AS st
- 一站式支付解决方案,统一下单接口,支持支付宝、微信、网银等多种支付方式。不涉及业务的纯粹的支付平台。 - 统一下单(统一下单接口、统一扫码)、订单管理、数据分析、财务报表、商户管理、渠道管理、对账系统...
mybatis.mapper-locations=classpath:mappers/*.xml 然后,在单元测试类中,先测试运行默认存在的空方法,测试通过后,自行编写并测试数据库连接是否正确: @Autowired DataSource dataSource; @Test ...