SpringMVC与Mybatis框架整合遇到的坑(转)

最近在做springmvc与mybatis的项目,遇到一些比较坑的问题。花了许多时间却发现其实解决的办法很简单。这里主要是讲我自己在整合这两个框架的时候遇到的一些问题做一个整理。希望遇到和我同样问题的小伙伴可以不被坑。

坑一:

nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 
  • 1

正如你所见,这个错误指的是没有找到有限的statement,就是在Mybatis映射文件中的SQL语句。为什么没找到呢?根据整理,无非是由以下几个方面的原因导致的:

  • Mapper接口的方法名与映射文件中的statement的id没有保持一致(我是由逆向工程直接生成的,所以排除这个可能);
  • 在spring的配置文件中没有扫描到制定目录的映射文件,一般可能是如下的配置出了问题:
<!--mybatis的sqlSessionFactory-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="mapperLocations" value="classpath:mapper/*Mapper.xml"/>
    </bean>
  • 1
  • 2
  • 3
  • 4
  • 5

注意到上面的第二个属性,该属性制定需要扫描的映射文件的位置,有可能你吧默认的mapper改名类似*Dao.java之类的,那么这种情况也会出现这个错误,这个没有遇到过。网上的解决办法是吧映射文件的namespace改成com.xxx.*Dao。这样。你可以试试。由于我是直接生成的,觉得默认的就挺好所以这个问题也不可能。

  • 扫描mapper接口的时候没有找到对应的类。由于我是直接拷贝全限定名的,所以也不可能是这个原因。
  • 虽然指定了正确的位置(在普通的web工程中),但是在Maven web工程中可能就会有问题,网上尝试了一堆办法都没有解决,真是醉了。我的就属于这种问题。

解决办法:把Mapper映射文件放到resource资源文件下面。

坑二:从Controller使用能够ModelMap传值到JSP页面的时候直接显示EL表达式

之所以回出现这个问题主要在于jsp页面没有把表达式作为一个表达式去解决,而只是当做一个简单的文本。所以自然就不能正确的显示了。

解决办法:在页面添加<%@ page isELIgnored="false"%>这个声明就可以。

http://blog.csdn.net/u011116672/article/details/50596989

 

时间: 2025-01-31 05:42:07

SpringMVC与Mybatis框架整合遇到的坑(转)的相关文章

SpringMVC与Mybatis框架整合遇到的坑

最近在做springmvc与mybatis的项目,遇到一些比较坑的问题.花了许多时间却发现其实解决的办法很简单.这里主要是讲我自己在整合这两个框架的时候遇到的一些问题做一个整理.希望遇到和我同样问题的小伙伴可以不被坑. 坑一: nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 正如你所见,这个错误指的是没有找到有限的statement,就是在My

SSM框架(二)--Spring、SpringMVC和MyBatis整合(详细教程)

一定要记得下载代码,自己对照教程敲一遍理解,百看不如一练 GitHub下载源码地址 SSM框架(一)–Spring和MyBatis整合(详细教程) 毋庸置疑,这个肯定是接着上一篇的讲,不过其实也不然,就复制上一工程的几个配置文件罢了,其实没多大联系,因为这个配置是我们学过MyBaits的逆向工程之后来配置. MyBaits的逆向工程 还是给个jar包 mybatis与spring整合全部jar包(包括springmvc) 还是给个SQL ssm测试sql 先谈谈springmvc和mybatis

Spring+SpringMVC+Mybatis配置整合

前言 关于SSM框架整合的问题,网络上有很多资源,但是最近想自己配置的时候却发现总是找不到一个完整的配置教程或完整的代码.有一些比较旧的博客里面讲了一些,但是spring的版本还都是3点几.最近自己从网上各个地方找了一些教程,然后试着自己配置了一下,遇到了很多问题,包括报各种各样的异常.现在终于搞好了,记录一下以备不时之需. 正文 话不多说,直接上干货. 在创建好maven的webapp之后,在pom.xml中加入一些配置.完整的文件如下. <project xmlns="http://m

SpringMVC+Spring+Mybatis整合,使用druid连接池,声明式事务,maven配置

一直对springmvc和mybatis挺怀念的,最近想自己再搭建下框架,然后写点什么. 暂时没有整合缓存,druid也没有做ip地址的过滤.Spring的AOP简单配置了下,也还没具体弄,不知道能不能用,log也不知道能不能用,`(*∩_∩*)′哈哈,有点不负责任...... 2014-08-12 23:45补: =================开始================= 1.增加quartz :http://www.cnblogs.com/acehalo/p/3902731.h

spring-mvc和mybatis整合DruidDataSource配置连接池报错

问题描述 spring-mvc和mybatis整合DruidDataSource配置连接池报错 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dynamicDatasourceAspect' defined in file [D:workspace.metadata.pluginsorg.eclipse.wst.server.coretmp1wtpwebappsdm_

spring mvc-spring,springmvc,mybatis整合

问题描述 spring,springmvc,mybatis整合 ssm整合时,spring怎么管理springmvc的controller的啊?比如spring整合struts时,struts将收到请求截获后不是直接交给action去处理,而是在struts.xml中,将action的名字写成spring中注册的bean!springmnc的流程就不是很清楚了,大神们能不能给个解释啊 解决方案 最近项目要用到MyBatis+SpringMVC+Spring,所以刚刚试着整合个测试项目,在此记录一

【SpringMVC整合MyBatis】整合思路与工程结构

springmvc和mybatis整合 1.需求 使用springmvc和mybatis完成商品列表查询. 2.整合思路 springmvc+mybaits的系统架构: 如图 第一步:整合dao层mybatis和spring整合,通过spring管理mapper接口.使用mapper的扫描器自动扫描mapper接口在spring中进行注册. 第二步:整合service层通过spring管理 service接口.使用配置方式将service接口配置在spring配置文件中.实现事务控制. 第三步:

ajax框架-用Spring,Springmvc,mybatis实现新用户注册并验证保存

问题描述 用Spring,Springmvc,mybatis实现新用户注册并验证保存 注册,将新用户输入的信息提交并进行验证,验证可采用验证框架也可采用validate,验证失败返回注册页面显示错误信息,验证成功后保存用户数据. 登陆,验证,失败后返回登陆页面显示错误信息,验证成功后保存用户信息至session. 登陆成功后,将所有用户数据展示给用户,列出用户详细信息,并分页.用拦截器判断,如果没有登陆的话返回登陆页面并提示用户没有登陆 1.Ioc注入全部采用Spring注解型注入. 2.使用m

有哪位大神提供一个springmvc+mybatis的整合事例!

问题描述 有哪位大神提供一个springmvc+mybatis的整合事例! 如题,有哪位有springMVC+mybatis的整合事例吗,本人现在真在学习mybatis,希望有一个整合事例看看,有的话可以把地址贴上面或者我的邮箱:1255528486@qq.com,提前谢谢了! 解决方案 http://download.csdn.net/detail/lgfeng218/5041749 解决方案二: springmvc+mybatis