文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

mybatis接口绑定失效的解决

2024-04-02 19:55

关注

mybatis接口绑定失效

出现错误:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

解释:这是mybatis所报的异常,意思是接口绑定失效

原因:

1.项目编译完成后mapper接口和mybatis的xml不在同一个目录下导致接口绑定失败。

2.如果是maven工程,使用idea编辑工程,会出现xml文件无法被编译到target当中,这种情况有两种解决,首先将和mapper接口在一起的xml文件放在resources文件夹下,这种情况下需要将xml文件所在的包名改成和mapper所在包名一致,还有一种情况就是在pom文件中将xml文件所在的目录标记为资源路径。

3.配置文件的路径写的有问题,在spring整合mybatis配置中指定mybatis的xml路径出错尤其注意如果如果resources包下和java包下路径相同一定要在路径前加classpath:来区别两者的不同,不然也会出现接口绑定失效的问题。

4.mybatis的xml文件中标签的namespace和对应mapper接口的全限定类名(包名+类名,不含类的后缀名)不一致

5.mybatis的xml文件中标签的id与对应mapper接口中的方法名不一致

与对应mapper接口中的方法名不一致**

小结一下

大体总结为mapper接口和xml之间关联出错,还有就是配置文件对xml所在文件路径指定错误,最后就是在编译后mapper接口和mybatis的xml不在同一个文件夹中。

mybatis接口绑定方法

通常情况下,使用Mapper.xml是无法实现多个参数的传递,除非传入Map或者是对象,这个时候我们就可以使用接口绑定的方法传入多个参数,

实现方法

第一步:创建一个与XML包名,类名完全相同的接口,包名类名即XML中配置的namespace

第二步:创建一个与XML中ID相同的方法,然后设置参数,


public interface LogMapper {
List<Log> selAll();
}

第三步:在 mybatis.xml 中使用<package>进行扫描接口和 mapper.xml


<mappers>
<package name="com.bjsxt.mapper"/>
</mappers>

在XML中传递参数

因为有多个参数,所以在XML中参数的返回值可以不用写, 但是在传参的时候。

第一种方法:可以在SQL语句中加入#{0} #{param1}就可以传递参数

第二种方法: 使用注解传递参数,

第一步 : 在函数的参数前添加注解


List<Log> selByAccInAccout(@Param("accin") String
accin123,@Param("accout") String accout3454235);

第二步: #{} 里面写@Param(“内容”)参数中


<!-- 当多参数时,不需要写 parameterType -->
<select id="selByAccInAccout" resultType="log" >
select * from log where accin=#{accin} and
accout=#{accout}
</select>

这就相当于是系统底层给我们也注释中写的字符串为Key 以形参为value 形成一个key然后传递给XML 这就实现了多个参数的传递

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯