magict

idea xml文件未编译报错(持续更新)

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


  同样,自己没找到问题之后百度搜索方案。问题大致意思为:mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。

  网上解决方案:

    按以下步骤一一执行:

    1:检查xml文件所在的package名称是否和interface对应的package名称一一对应

    2:检查xml文件的namespace是否和xml文件的package名称一一对应

    3:检查函数名称能否对应上

    4:去掉xml文件中的中文注释

    5:随意在xml文件中加一个空格或者空行然后保存

  但是我按照这个顺序反复排查无果,最后发现在 src/target/classes/... 目录下只有.java文件,没有与之对应的xml文件,意思是xml

文件没有编译过来。

  

 

  解决方案:

  1,直接把对应的xxxMapper.xml复制到 src/target  的.java文件同级目录下,

  

  2,在pom.xml文件的build中添加如下,注意<resource>写在<resources>里面:

  

  这样以后的xxMapper.xml文件就都会自己编译进来,运行,成功!

 

  以上情况属于xml文件在 src/main/java 里面得到解决,如果xml放在与java同级目录时,如下:

 

在mybatis和hibernate得项目中,有时会把xml放在java目录外边,但是idea也没有进行编译,这时也在pom.xml文件中配置:

再运行,成功跑起来。

 

再后来,idea创建的项目没有出现过xml未编译情况,总结发现:

  之前创建项目使用的是idea默认的maven,如图

  

 

 在这里我选择自己安装的maven,创建的项目xml都正常编译,希望可以帮到小伙伴们脱离这个问题!

 

发表于 2019-07-17 22:31  MagicT8946  阅读(2403)  评论(1编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2021-08-05
  • 2021-09-04
  • 2021-11-07
  • 2021-09-09
  • 2021-01-06
  • 2022-01-07
  • 2022-12-23
  • 2021-05-10
猜你喜欢
  • 2021-07-17
  • 2021-10-30
  • 2021-06-04
  • 2021-11-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案