`
一笑_奈何
  • 浏览: 68872 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Mapped Statements collection does not contain value for 解决方法

阅读更多
    最近一直在弄springMVC+mybatis的整合,因为接触到这个框架之后发现这个框架确实要比ssh好得多所以我自己也在配置这个框架。但是在配置的过程中我遇到了一些问题,这些问题当我配置完成之后访问我的写的其中一个业务模块就抛出异常:Mapped Statements collection does not contain value for。
    于是我在网上找了一些资料室关于这方面的问题,而遇到这方面的问题通常原因有三种:1。mybatis的映射文件的命令空间与接口的全限定名不一致;2有可能mybatis的映射文件名字与接口的类名字不一致;3.还有一种情况就是接口声明的方法在映射文件里面没有。经过我各方面的排查发现和上面说的一点都不符合。所以我继续接着找问题,经过我边写边思考发觉的我配置文件没有问题于是我继续在网上找资料后来我把映射路径换成mybatis的配置文件的映射路径就能够正常访问。于是我发现是在mappinglocations里面映射路径写错了。经过一系列的排查才知道原来我在mappinglocations的路径classpath*:替换成classpath:就对了这样就能够找到真正的映射路径了。
    我现在把我的配置文件法出现以便以后参考:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context-3.0.xsd
            http://www.springframework.org/schema/aop
            http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
            http://www.springframework.org/schema/tx
            http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
            http://www.springframework.org/schema/mvc
            http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context-3.0.xsd">
	<context:property-placeholder location="classpath:jdbc.properties"/>
	
	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close" scope="singleton">
		<property name="driverClass" value="${driver}"></property>
		<property name="jdbcUrl" value="${url}"></property>
		<property name="user" value="${username}"></property>
		<property name="password" value="${password}"></property>
		<property name="initialPoolSize" value="${initialPoolSize}"></property>
		<property name="minPoolSize" value="${minPoolSize}"></property>
		<property name="maxPoolSize" value="${maxPoolSize}"></property>
		<!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。默认值: 0 -->
		<property name="maxIdleTime" value="${maxIdleTime}"></property>
		<!-- 当连接池连接耗尽时,客户端调用getConnection()后等待获取新连接的时间,超时后将抛出SQLException,如设为0则无限期等待。单位毫秒。默认: 0 -->  
		<property name="checkoutTimeout" value="${checkoutTimeout}"></property>
		<!--关闭连接时,是否提交未提交的事务,默认为false,即关闭连接,回滚未提交的事务 -->   
		<property name="autoCommitOnClose" value="${autoCommitOnClose}"></property>
		<!--如果为false,则获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常,但是数据源仍有效保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试获取连接失败后该数据源将申明已断开并永久关闭。默认: false-->   
        <property name="breakAfterAcquireFailure" value="${breakAfterAcquireFailure}"></property>  
        <!--每60秒检查所有连接池中的空闲连接。默认值: 0,不检查 -->   
        <property name="idleConnectionTestPeriod" value="${idleConnectionTestPeriod}"></property> 
         <!--c3p0全局的PreparedStatements缓存的大小。如果maxStatements与maxStatementsPerConnection均为0,则缓存不生效,只要有一个不为0,则语句的缓存就能生效。如果默认值: 0-->   
        <property name="maxStatements" value="${maxStatements}"></property>  
          <!--maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。默认值: 0 -->   
        <property name="maxStatementsPerConnection" value="${maxStatementsPerConnection}"></property>  
	</bean>
	
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource"></property>
		<property name="mapperLocations" value="classpath:com/taoShop/ebiz/dao/mapper/*.xml"></property> 
		<property name="typeAliasesPackage" value="com.taoShop.ebiz.entry"></property>
		<property name="typeAliases">
			<array>
				<value>com.taoShop.page.Page</value>
			</array>
		</property>
		<property name="plugins">
			<array>
				<bean class="com.taoShop.page.PageInterceptor"></bean>
			</array>
		</property>
	</bean>

	<bean id="mapperBeanFactory" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.taoShop.ebiz.dao"></property>
		<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
	</bean>
</beans>

分享到:
评论

相关推荐

    mybatisMapped报错 Statements collection does not contain value for

    在使用MyBatis框架进行数据库操作时,可能会遇到“Mapped Statements collection does not contain value for”这样的错误提示。这通常意味着MyBatis无法找到与指定的ID相对应的映射语句。下面将详细解释这个问题的...

    如何解决Mybatis--java.lang.IllegalArgumentException: Result Maps collection already contains value for X

    在整合Spring、Struts2和Mybatis的过程中,可能会遇到各种问题,其中之一就是`java.lang.IllegalArgumentException: Result Maps collection already contains value for X`。这个问题通常出现在Mybatis配置文件中,...

    mybatis 报空值异常

    除了上述情况外,还可能出现其他类型的错误,如 `MappedStatements collection does not contain value for...` 这类异常,通常是由以下几个原因导致的: 1. **Mapper XML 中缺少命名空间** 确保 mapper 文件中...

    一个struts2的例子:彻底解决STRUTS2 错误There is no Action mapped for namespace / and action name login

    前几天在网上下载一个struts2的helloword的例子,那个作者也真够缺德的,搞个错误的程序,害得我查了一天的程序错误。 最后发现竟然是struts.xml被写成啦sturts.xml。 碰见这样的问题先鄙视下提供例子的作者, ...

    .NET4利用MemoryMappedFile实现跨进程多个可执行程序之间的通信

    基于.NET4.0的MemoryMappedFile实现共享内存通信 共享内存通信可以解决跨线程、跨进程、跨EXE之间通信的问题 对于需要传输图片等引用类数据,可以通过序列化和反序列化配合共享内存实现跨进程(跨EXE)通信 共享...

    MemoryMappedFile 使用 共享内存循环读写

    MemoryMappedFile 使用 C# 内存中分配一大块地址. 前边分配一个用与共同配置用 后边N个结构体 for循环建 一般用到此问题,两本程序 一个读一个写 循环读写 ----2015/09/24 Lyndon 上海----

    Memory-Mapped Files for Qualcomm Brew

    ### Memory-Mapped Files for Qualcomm Brew #### 作者:Ray Rischpater 在现代无线手持设备的开发过程中,内存管理始终是一项重要的考虑因素。尽管近年来移动设备的内存容量有了显著提升,但有效的内存管理和利用...

    mappedBy属性:one2many

    在处理一对多(One-to-Many)关系时,`mappedBy`属性扮演了关键角色。这篇博客文章,虽然描述为空,但链接指向了一个可能深入讨论`mappedBy`特性的资源。 `mappedBy`属性是Hibernate中用于定义关联关系的一个关键...

    MDB: A Memory-Mapped Database and Backend for OpenLDAP

    本文主要介绍了一种名为MDB(Memory-Mapped Database)的读优化数据库库及其作为OpenLDAP后端的应用。该技术由Howard Chu开发,并在Symas Corp.以及OpenLDAP项目中得到应用。MDB作为一种专门为OpenLDAP设计的内存...

    c# 共享内存,MemoryMappedFiles

    当处理大型数据或需要在多个进程(或多个程序)之间共享数据时,MemoryMappedFiles(内存映射文件)是一种非常有用的技术。它允许将文件映射到进程的虚拟内存中,从而可以直接在内存中读取和写入文件的内容,而无需...

    基于springboot+mybatis实现的外卖订餐系统源码+项目说明(毕设).zip

    Mapped Statements collection already contains value for com.m.dao.AdminDao.login at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType ...

    Calibri字体,解决System.ArgumentException字体Calibri不支持样式Regular

    为了解决: System.ArgumentException: 字体“Calibri”不支持样式“Regular”。 在 System.Drawing.Font.CreateNativeFont() 的问题。 用此字体即可。

    Memory Mapped File Demo in WinCE

    在Windows CE操作系统中,内存映射文件(Memory Mapped File)是一种高效的数据交换技术,尤其适用于不同进程间的通信。本文将深入探讨如何在WinCE环境下使用内存映射文件实现A和B两个程序之间的数据共享。 内存...

    Collections

    This process does not affect the original dictionary. ##### Using Custom Keys Dictionaries can use any hashable type as a key. Custom keys can be implemented by conforming to the `Hashable` ...

    mapped-types:Nest框架的配置模块(node.js):wolf:

    $ npm i --save @nestjs/mapped-types 快速开始 构建功能时,在基本实体类型上构建变体通常很有用。 这种变体的一个很好的例子是数据传输对象(DTO)。 数据传输对象是用于封装数据并将其从应用程序的一部分发送到...

    alter filter

    #### 2.8 Large Arrays of Registers Not Mapped Into Memory for MVC **问题描述:** 对于 MVC 架构,大量的寄存器数组无法映射到内存中。 **设计影响:** 可能会导致资源利用率低下或性能下降。 **解决方法:** ...

    acpi控制笔记本风扇转速

    _HID does not match the predefined PCI Root Bridge IDs, the _CID list (if present) is now obtained and also checked for an ID match. Implemented additional support for the PCI _ADR execution: up...

    微软内部资料-SQL性能优化2

    Assuming the page reference does not result in an access violation, a page fault can be either hard or soft. A hard page fault results in a read from disk, either a page file or memory-mapped file. A...

    HTTP Status 404 - There is no Action

    针对上述问题,可以采取以下几种方法进行排查和解决: 1. **检查配置文件**: - 确认`struts.xml`文件中是否正确配置了`BackMemberGroupAudit`动作及其命名空间。 - 检查命名空间和动作名称的拼写是否正确。 - ...

Global site tag (gtag.js) - Google Analytics