`

mybatis + maven 搭建入门常见错误

阅读更多

问题

 

  org.apache.ibatis.exceptions.PersistenceException: 

### Error querying database.  Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for UserMapper.queryUserById

### Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for UserMapper.queryUserById

at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:77)

at com.mybatis.mapper.UserMapperTest.testQueryUserById(UserMapperTest.java:42)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)

at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)

at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)

at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)

at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)

at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)

at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)

at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)

at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)

at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)

at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)

at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)

at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)

at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)

at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)

at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)

at org.junit.runners.ParentRunner.run(ParentRunner.java:309)

at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)

at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

Caused by: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for UserMapper.queryUserById

at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:875)

at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:708)

at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:701)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147)

... 30 more

 

 解决方案

   

       1. 查看mybatis的核心配置文件是否被加载;

        2. 查看mybatis的映射文件的namespace地址是否和接口对应的类路径是否保持一致;

        3.查看id是否和方法名称保持一致

        4.查看参数类型/返回值类型是否和数据库类型能匹配上

 

 

本人的最终解决方案

       

       pojo类和方法的类型没有匹配上造成的

 

 

 

分享到:
评论

相关推荐

    SpringMVC+Mybatis+Maven搭建代码实例

    以上就是SpringMVC+Mybatis+Maven搭建实例的基本流程。在实际开发中,我们还需要关注日志管理、异常处理、安全性、性能优化等多个方面。通过这种方式搭建的项目结构清晰,易于维护,是Java Web开发中的首选方案。

    spring +springboot+mybatis+maven 读写分离及事务管理

    spring +springboot+mybatis+maven 读写分离,数据库采用mysql, 采用springboot 采用项目框架搭建,继承spring 中的AbstractRoutingDataSource,实现 determineCurrentLookupKey 进行数据源的动态切换,采用Spring ...

    SpringMvc+Spring+Mybatis+Maven整合.part10

    通过SpringMvc+Spring+Mybatis+Maven整合,学习用maven搭建框架

    springMVC+Spring+Mybatis+Maven整合代码案例

    4、搭建spring和mybatis的配置:spring-mybatis.xm(扫描dao)) 5、测试Spring+mybatis的框架搭建,写单元测试JUnit,测试事务配置等:model-->dao(mapper)-->service-->test 6、映入SpringMVC:配置...

    springmvc+mybatis+maven完整项目代码

    springmvc+mybatis+maven完整项目代码,麻雀虽小,五脏俱全。该项目可以说是当前目前最主流,性价比最好的web框架了,也就是SSM框,下载后可直接导入eclipse运行,代码中还包含了mybatis自动生成配置文件。珍藏,忍痛...

    基于SpringMVC+Spring+MyBatis+Maven项目案例.zip

    基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis...

    整合Spring+SpringMVC+Mybatis+Maven+Mysql项目实例

    整合搭建Spring+SpringMVC+Mybatis+Maven+Mysql开发实例

    基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip

    基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+MyBatis+Maven项目案例源码+数据库.zip 基于SpringMVC+Spring+...

    SpringBoot+tk.Mybatis+Maven项目搭建(IDEA)

    开发工具:IDEA 简介:使用SpringBoot+tk.Mybatis+Maven搭建的项目demo,可供参考和交流学习。项目文章:https://blog.csdn.net/fakerswe/article/details/80910035

    SpringMvc+Spring+Mybatis+Maven+注解方式=整合

    "SpringMvc+Spring+Mybatis+Maven+注解方式"是一个经典的Java后端技术栈,它整合了四个关键组件,为开发人员提供了强大的工具和框架支持。下面将详细讲解这四个组件及其整合方式。 1. **Spring Framework**: ...

    Spring+Spring MVC+Mybatis+Maven搭建多模块的web项目

    Spring + Spring MVC + Mybatis + Maven搭建多模块的web项目 里面包含了很多配置方面的注释,方便日后维护。 采用了通用Mapper封装了单表的增删改查操作 github地址:https://gitee.com/free/Mapper 采用了分页...

    基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili视频网站项目源码.zip

    基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili视频网站项目源码.zip 基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili视频网站项目源码.zip 基于ssm(spring+spring mvc+mybatis+maven)高仿bilibili...

    spring+springmvc+mybatis+maven集成

    自己用eclipse搭建了一个spring+springmvc+mybatis+maven继承的一个框架,可以拿来直接用,里面写了一个简单的controller调service调dao层的查数据的操作。数据库用的mysql,可以改成修改jdbc.properties可以改成...

    springmvc+spring+mybatis+maven整合源码

    【标题】"springmvc+spring+mybatis+maven整合源码"所涉及的知识点主要集中在企业级Java开发中常用的四个框架的集成应用上。这四个框架分别是Spring MVC、Spring、MyBatis和Maven,它们在Java Web开发中各有其重要...

    spring+springMVC+Mybatis+maven框架

    以上就是关于"spring+springMVC+Mybatis+maven框架"整合的知识点,这个整合包提供了完整的SSM项目结构,开发者可以直接使用,避免了从零开始搭建环境的繁琐步骤。通过这个项目,你可以学习到如何有效地组织和管理...

    spring+mybatis+maven

    总结来说,"spring+mybatis+maven"的组合为Java Web开发提供了一个强大、灵活的解决方案,它简化了项目构建、依赖管理、数据库操作以及测试过程。在实际开发中,这个组合可以大大提高开发效率,同时保持代码的清晰...

    Spring Boot+MySQL+Mybatis+Maven+IDEA(一个简单的数据库增删改查项目)

    在本项目中,我们主要探讨的是如何利用Spring Boot、MySQL、Mybatis以及Maven这四大核心技术,配合IDEA集成开发环境来实现一个基础的数据库增删改查功能。这是一个典型的Web应用开发流程,旨在帮助开发者快速搭建...

    springmvc+spring+mybatis+maven示例

    在"springmvc+spring+mybatis+maven示例"项目中,你可能会看到以下文件结构: - src/main/java:存放源代码,包括Controller、Service、DAO等类。 - src/main/resources:配置文件,如Spring的bean配置、MyBatis的...

    基于java+ssm(spring+spring mvc+mybatis+maven)实现高仿bilibili视频网站源码+文档

    基于ssm(spring+spring mvc+mybatis+maven)实现的高仿bilibili视频网站+源码+开发文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 基于ssm(spring+spring mvc...

Global site tag (gtag.js) - Google Analytics