项目中用的是spring3.0.5,MyBatis3.0.5,整合mybatis,spring用的是mybatis-spring-.1.0.1。在这个过程中,遇到了一个配置上的问题,就是配置Mapper时的错误,在运行时抛出如下异常:
Exception in thread "main"
java.lang.IllegalArgumentException
: Mapped Statements collection does not contain value for cn.xxxx.mail.webmail.dao.UserMapper.getUserById
一看就知是Mapper配置出错了。仔细检查过了,
1、我是用:<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="cn.xxxx.mail.webmail.dao.mapper"/>
</bean>让spring自动加载mapper配置的,这个没错。
2、UserMapper.java接口和UserMapper.xml同名,且在同一路径下,这个没错。
我的UserMapper.java有个方法是:public User getUserById(String id);
问题就出在这里了,我在UserMapper.xml中配成了这样:
<select id="getUser" resultType="cn.xxxx.mail.webmail.model.User" parameterType="java.lang.String">
select * from users where id=#{value}
</select>
在配置文件中的select 的id写错了,写成getUser,没和UserMapper.java的方法同名
经过这次,得出如下结论:
1、mapper的java文件和mapper的xml配置文件要同名,同路径
2、mapper的java文件的方法名称和mapper的xml配置文件的id要同名称
3、mapper配置文件的namespace要全名,不能只写包名
如:cn.xxxx.mail.webmail.dao.mapper.UserMapper,这时,namespace不能写 成:cn.xxxx.mail.webmail.dao.mapper
分享到:
相关推荐
MyBatis-Spring 整合 包括了原始的dao实现类的方式,和mapper 动态代理的方式,详细的配置文件讲解与注释
它将允许 MyBatis 参与到 Spring 的事务管理之中,创建映射器 mapper 和 SqlSession 并注入到 bean 中,以及将 Mybatis 的异常转换为 Spring 的 DataAccessException。最终,可以做到应用代码不依赖于 MyBatis,...
该压缩包包含了mybatis与spring整合的全部jar包,为学习整合ssm框架提供一个环境
综上所述,Spring Boot整合MyBatis-Plus作为数据层框架,不仅能够提高开发效率,还能够通过其丰富的特性满足复杂的业务需求。对于希望在Spring Boot项目中使用MyBatis进行数据操作的开发者来说,MyBatis-Plus是一个...
n Spring + Mybatis + MP 整合 n SpringBoot + Mybatis + MP 整合 n 通用CRUD的全面讲解 n 配置 l 高级用法 n 条件构造器 n Oracle 主键Sequence n 通用枚举n ActiveRecord n 逻辑删除 l 插件 n 执行分析插件 n 性能...
//跳转到修改图书信息页面 @RequestMapping("/toUserEdit") public String toUserEdit(Integer user_id, Model model){ //放进model User user = userService.findUserById(user_id); model.addAttribute(...
spring和mybatis框架整合,采用mapper代理自动扫描方式实现,已添加junit测试类。建议参照我的另一资源spring和mybatis整合(原始dao方式实现)对比
mybatis.mapper-locations=classpath:mapper/*.xml #mapper #mappers 多个接口时逗号隔开 mapper.mappers=tk.mybatis.springboot.util.MyMapper mapper.not-empty=false mapper.identity=MYSQL #pagehelper ...
MyBatis与Spring整合——通过官方文档进行最简单的整合
Dubbo-Spring-Mybatis-Generator Ability (quickly build Dubbo-Spring-Mybatis rpc project in one minute) - 快速生成spring-boot-duboo-rpc 服务框架模板代码 拒绝copy代码带来的坑 提高开发效率 - 生成的代码...
springboot+mybatis逆向生成controller+service+mapper+entity 直接生成一个简单的CURD的swagger风格的代码工具,集成了多种通用Mapper。
配置在src / main / java不会被主动编译,需要在pom里面指定编译最好不要使用此属性“ value =“>,多次运行会导致Mapper里出现重复内容,此属性仅用于删除Mapper中的注释而已Spring Boot下需要配置mapper-locations...
本项目作用为将Mybatis与Spring整合到一起 项目处于开发阶段 ...... ##模块划分 ###Service模块 存放实体以及相关核心代码 分为四个子模块 dao Mybatis自动生成,一般存放*Mapper.java,相当于Hibernate中的Dao entity...
Mybatis_SpringMapper,Spring和Mybatis整合,采用Mapper代理的方式。包含事务的处理。
springboot 整合 mybatis-plus简介mybatis-plus添加依赖 `pom.xml`配置代码创建实体类创建Mapper类调试控制台CRUD新增删除查询修改更多API请看官网: [Mybatis Plus](https://mp.baomidou.com/)总结补充感谢感谢您的...
mybatis_spring(mapper代理开发方法的整合,包括两种整合项目)
boot-mybatis-tkSpring Boot整合Mybatis 通用mapper
core 服务提供者模块lidong-dubbo-web 服务消费者模块mybatis-generator mybatis生成mapper的模块#该项目使用到的技术dubbo2.5spring4mybastis3.2springmvc4spring-data-mongodbspring-data-redisspring-session...
(代码)SpringCloud第03讲:整合MyBatis通用Mapper
jackson-mapper-asl-1.8.8.jar javassist-3.17.1-GA.jar jboss-logging-3.1.0.CR2.jar jstl.jar junit-4.10.jar log4j-1.2.17.jar log4j-api-2.2.jar log4j-core-2.2.jar mybatis-3.2.3.jar mybatis-ehcache-1.0.2....