2 hushenbin hushenbin 于 2014.12.15 16:42 提问

mybatis错误: Invalid bound statement (not found) 万分感谢!

0.问题说明:
我是一名菜鸟,最近使用spring-mvc ,spring,mybatis框架
这两天出现一个错误一直搞不定,心好累,恳请前辈帮帮忙
1. 异常

 org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.misscandy.inter.UserMapper.findAllUsers
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:978)
    org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

2.我的配置文件

 <!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="mapperLocations" value="classpath:com/misscandy/mapper/*.xml" />
    </bean>

    <!-- 按指定包和注解扫描 Mapper/DAO -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="sqlSessionFactory" ref="sqlSessionFactory" />
        <property name="basePackage" value="com.misscandy.inter" />
        <property name="annotationClass" value="com.misscandy.mapper.Mapper" />
    </bean>

3.接口
UserMapper.java

 package com.misscandy.inter;

import java.util.Vector;

import com.misscandy.entity.User;
import com.misscandy.mapper.Mapper;


@Mapper
public interface UserMapper {
    void addUser(User user);
    //void deleteUser(User user);
    //void updateDept(User user);
    User findUserByName(String userName);
    Vector<User> findAllUsers();
    //List<Map<String, Object>> findValue();
    //List<DeptVO> findValues();
}

4.UserMapper.xml

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <!-- namespace -->
<mapper namespace="com.misscandy.inter.UserMapper">

    <!-- @1 resultMap
         @2 resultMap=""-->
    <resultMap id="userResultMap" type="com.misscandy.entity.User">
        <id property="userId" column="user_id" javaType="Integer" jdbcType="INTEGER" />
        <result property="userName" column="user_name" javaType="String"
            jdbcType="VARCHAR" />
        <result property="password" column="password" javaType="String"
            jdbcType="VARCHAR" />
        <result property="sex" column="sex" javaType="Integer"
            jdbcType="INTEGER" />
        <result property="age" column="age" javaType="Integer"
            jdbcType="INTEGER" />
        <result property="type" column="type" javaType="Integer"
            jdbcType="INTEGER" />
        <result property="lastLoginTime" column="last_login_time"
            javaType="Date" jdbcType="DATE" />
        <result property="imageSrc" column="image_src" javaType="String"
            jdbcType="VARCHAR" />
    </resultMap>

    <select id="findUserByName" parameterType="String" resultMap="userResultMap">
        <![CDATA[
        select user_id,user_name,image_src,age,sex,type from users where user_name = #{userName}
        ]]>
    </select>

    <select id="findAllUsers" resultMap="userResultMap">
        <![CDATA[
        select user_id,user_name,age,sex,type from users
        ]]>
    </select>

    <insert id="addUser" parameterType="com.misscandy.entity.User">
        <![CDATA[
        insert into users 
        (user_name,password,sex,age,type)
        values
        (#{userName},#{password},#{sex},#{age},1)
        ]]>
    </insert>

</mapper>


11个回答

save4me
save4me   Ds   Rxr 2014.12.16 09:57
已采纳

检查一下你的配置文件中,但是你的UserMapper.xml看上去是在com.misscandy.inter文件夹下面,是不是?

u011203247
u011203247   2014.12.15 17:28

写好findallusers方法的配置文件 看看有没有设置错了, 找不到你这个SQL语句

u011203247
u011203247 有没有加好包之类的,是不是除了某个 映射文件 其余都可以?还是全部都不可以? 你先一个一疑点排除一下
接近 3 年之前 回复
hushenbin
hushenbin 我检查4.5遍了,不造漏了哪里,实在找不到来csdn求救的,代码都发了,花几分钟帮我看看呗,谢谢
接近 3 年之前 回复
shuilongyin521
shuilongyin521   2015.01.23 13:33

看看你的mbts.xml文件编译了没有, 如果没有编译,需要在pom里配置一下

hushenbin
hushenbin   2014.12.15 17:42

求救,脑袋疼 哭,mabtis映射错误,求救。

wwy1219787539
wwy1219787539   2015.03.18 00:19

把你的configuration.xml文件粘出来,帮你看看

emilyRR
emilyRR   2015.08.15 09:46

我的也是这个错误,但是同一配置文件的另一个方法可以查询成功,估计是我哪里粗心写错了,不知道楼主解决了没?

enphie_tony
enphie_tony   2015.12.21 14:15

楼主,这个问题解决了吗,我也遇到这个问题

enphie_tony
enphie_tony   2015.12.21 14:14

楼主,这个问题解决了吗,我也遇到这个问题

qq_15868501
qq_15868501   2015.12.22 11:06

要添加 类似于 这个

sinat_23679015
sinat_23679015   2016.04.10 10:56

看看你们是不是多写了一个空格

共11条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片