gpt4 book ai didi

mybatis那些约定的配置你真的都了解吗(经验总结)

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 27 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章mybatis那些约定的配置你真的都了解吗(经验总结)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

背景

在springboot中有很多约定大于配置的规则,如果我们准守了约定,可以零配置。mybatsi中Mapper和xml文件之间有很多约定俗称的规则,比如名称匹配,包扫描,别名等,这些规则是什么。如果想更加灵活,该如何配置呢?今天就给大家讲一下如何配置mybatsi的xml文件等.

1、@Mapper注解和@MapperScan注解使用说明

  • 可以不使用@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.

2、 mapper代理方法必须一致

mapper代理方法

–程序员只需要mapper接口和mapper.xml映射文件,mybatis可以自动生成mapper接口实现类代理对象。 –程序员编写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文件名应该和接口名保持一致,否则也可能出现不匹配

2、xml文件的位置

位置1:放在resource目录下相同目录结构

这种方式无需额外的配置,但并不推荐.

mybatis那些约定的配置你真的都了解吗(经验总结)

位置2:放在resource下任意目录

比如指定mapper-location的位置,否则扫描不到 。

?
1
2
mybatis:
   mapper-locations: classpath:/mapper/*.xml

位置3:和mapper接口放在同一目录下

这种情况下比较特殊,其实是能扫描到这个xml文件的,只是打包时不会打进去。可以通过添加如下配置将xml打包进去.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<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那些约定的配置你真的都了解吗(经验总结)

总结

虽然有多种方式都可以达成配置,但还是推荐加上注解同时指定好扫描路径.

以上就是mybatis那些约定的配置你真的都了解吗的详细内容,更多关于mybatis配置的资料请关注我其它相关文章! 。

原文链接:https://blog.csdn.net/kouryoushine/article/details/117972147 。

最后此篇关于mybatis那些约定的配置你真的都了解吗(经验总结)的文章就讲到这里了,如果你想了解更多关于mybatis那些约定的配置你真的都了解吗(经验总结)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com