这篇文章主要介绍“mybatis有哪些约定的配置”,在日常操作中,相信很多人在mybatis有哪些约定的配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mybatis有哪些约定的配置”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
在springboot中有很多约定大于配置的规则,如果我们准守了约定,可以零配置。mybatsi中Mapper和xml文件之间有很多约定俗称的规则,比如名称匹配,包扫描,别名等,这些规则是什么。如果想更加灵活,该如何配置呢?今天就给大家讲一下如何配置mybatsi的xml文件等。
可以不使用@MapperScan注解,默认扫描根路径下标注了@Mapper注解的接口
可以使用@Mapper注解,使用@MapperScan(“com.kouryoushine.mybatis.demo.mapper”),告诉spring该包下的接口都作为Mapepr对象扫描到容器中
两个注解都不使用,报如下错误。在根路径下扫描不到任何Mapper
No MyBatis mapper was found in ‘[com.kouryoushine.mybatis.demo]' package. Please check your configuration.
–程序员只需要mapper接口和mapper.xml映射文件,mybatis可以自动生成mapper接口实现类代理对象。
–程序员编写mapper接口需要遵循一些开发规范。
在mapper.xml中namespace等于mapper接口地址
mapper.java接口中的方法名和mapper.xml中statement的id一致
mapper.java接口中的方法输入参数类型和mapper.xml中statement的parameterType指定的类型一致。
mapper.java接口中的方法返回值类型和mapper.xml中statement的resultType指定的类型一致。
mapper.xml文件名应该和接口名保持一致,否则也可能出现不匹配
这种方式无需额外的配置,但并不推荐。
比如指定mapper-location的位置,否则扫描不到
mybatis: mapper-locations: classpath:/mapper/*.xml
这种情况下比较特殊,其实是能扫描到这个xml文件的,只是打包时不会打进去。可以通过添加如下配置将xml打包进去。
<build> <resources> <!-- 扫描src/main/java下所有xx.xml文件 --> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> <!-- 扫描resources下所有资源 --> <resource> <directory>src/main/resources</directory> </resource> </resources> </build>
注:没有上述配置时target是没有mapper.xml文件的,大家可以自己尝试
虽然有多种方式都可以达成配置,但还是推荐加上注解同时指定好扫描路径。
到此,关于“mybatis有哪些约定的配置”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。