解决异常 org.apache.ibatis.binding.BindingException: Type interface xxxx is not known to the MapperRegis

BindingException: Type interface xxxx is not known to the MapperRegistry.
直译:映射器注册不知道接口类型。

at org.apache.ibatis.binding.MapperRegistry.getMapper(MapperRegistry.java:47)
at org.apache.ibatis.session.Configuration.getMapper(Configuration.java:745)
at org.apache.ibatis.session.defaults.DefaultSqlSession.getMapper(DefaultSqlSession.java:292)
at com.itheima.test.MybatisTest.main(MybatisTest.java:28)

一般出现这个问题,原因是mapper映射文件的namespace属性内容和实际代理的接口类名不一致!
如图,红色框内不小心多打了一个点,在引号内编译器不报错,运行时才会报错。
解决异常 org.apache.ibatis.binding.BindingException: Type interface xxxx is not known to the MapperRegis_第1张图片如果包名很多或者类名很长容易写错的情况下,建议鼠标放置接口类名上方,右键Copy Reference复制全限定类名。

总结:映射文件的 mapper标签namespace属性的取值必须是dao 接口的全限定类名。

你可能感兴趣的:(mybatis,apache,exception)