这篇文章主要介绍如何解决mybatis-plus自动配置的mapper.xml与java接口映射问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
本来没有mybatis-plus的话,这个工作是通过mybatis-spring的MapperScan来完成的。
Mybatis-plus中的自动配置类MybatisPlusAutoConfiguration.class中有一个静态内部类
MapperScannerRegistrarNotFoundConfiguration用于完成这个配置。
这个内部类导入了AutoConfiguredMapperScannerRegistrar.class配置类,其实这个配置类也是MybatisPlusAutoConfiguration的静态内部类。
通过ClassPathMapperScanner 来扫描包,用于完成映射,ClassPathMapperScanner 是mybatis-spring中的配置类
ClassPathMapperScanner scanner = new ClassPathMapperScanner(registry);
如果用Mybatis-plus的自动配置,那么所有的Dao接口必须要用Mapper.class注解,因为Mybatis-plus设置的就为Mapper.class
最终会在scanner.registerFilters()这步操作中被添加到includeFilters中。
最终被扫描到的类与includeFilters匹配且不与excludeFilters匹配,最终才会筛选出保留的BeanDefinition.
遇见找不到方法
mybatis-plus.mapper-locations=classpath:static/mybatis_mapper/*.xml
以上是“如何解决mybatis-plus自动配置的mapper.xml与java接口映射问题”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。