zoukankan      html  css  js  c++  java
  • org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.gong.mybatis.dao.EmployeeMapper.getEmpById

    在mybatis全局配置文件中利用mappers中的mapper中的class属性配置sqll映射文件时出现该问题:以EmployeeMapper.java和EmployeeMapper.xml为例

    在使用class配置sql映射文件时:

    需注意三点:

    1、EmployeeMapper.java和EmployeeMapper.xml需在同一个包下,且类名和xml文件名要相同;

    2、在Mybatis全局配置文件中注册映射文件时要正确:

        <mappers>
            <mapper class="com.gong.mybatis.dao.EmployeeMapper" />
        </mappers>

    3、在EnployeeMapper.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">
    <mapper namespace="com.gong.mybatis.dao.EmployeeMapper">
        <select id="getEmpById" resultType="com.gong.mybatis.bean.Employee">
            select id,last_name lastName,email,gender from tbl_employee where id = #{id}
        </select>
    </mapper>

    在EmployeeMapper.java中:

    package com.gong.mybatis.dao;
    
    import com.gong.mybatis.bean.Employee;
    
    public interface EmployeeMapper {
        public Employee getEmpById(Integer id);
    }

    namespace的值要与EmployeeMapper接口中的全类名保持一致,同时id的值要与相关的方法名保持一致。

    4、如果这些都是正确的,那么可以做如下处理:

    • 去掉EmployeeMapper.xml文件中的中文注释(我就是这么解决的)

    • 在EmployeeMapper.xml文件中加一个空格或者空行然后保存

  • 相关阅读:
    bWAPP练习--injection篇SQL Injection (GET/Search)
    利用gmpy2破解rsa
    Linux 下安装gmpy2
    Linux下安装scapy-python3
    python升级带来的yum异常:File "/usr/bin/yum", line 30
    CentOS7 安装Python3.6.4
    bWAPP练习--injection篇之HTML Injection
    kali2.0安装VMware Tools
    Lombok插件看法浅谈
    记一次Java动态代理实践【首发自高可用架构公众号】
  • 原文地址:https://www.cnblogs.com/xiximayou/p/12209227.html
Copyright © 2011-2022 走看看