MyBatis-XML映射文件

XML映射文件

规范

  • XML映射文件的名称与Mapper接口名称一致(EmpMapper对应EmpMpper.xml),并且将XML映射文件和Mapper接口放置在相同包下(同包同名)

    ​​​

    • 在maven项目结构中所有的配置文件都在resources目录之下,因此要在该目录下创建Mapper接口相同的文件目录,注意在创建目录时要使用**/进行目录的分级**
  • XML映射文件的namespace属性与Mapper接口全限定名一致

  • XML映射文件中的SQL语句的id与Mapper接口中的方法名一致,并保持返回类型一致。

    • Mapper接口中的方法名

    • XML映射文件中的id

    • 设置返回查询结果的返回类型resultType

      • resultType设置的是查询结果单条记录所封装的类型

原理

在调用某一个Mapper接口中的方法时,就会执行该Mapper接口对应的XML映射文件中的对应的SQL语句

如上述3图所示:在调用EmpMapper接口中的List()时,就会执行对应的EmpMapper.xml映射文件中的id=List的SQL语句

IDEA插件

  • MybatisX是一款基于IDEA的快速开发Mybatis的插件,为效率而生。
  • 在IDEA插件中进行搜索即可
  • 安装成功之后在Mapper接口文件前就会如下图所示

小结

使用注解来映射简单语句会使代码显得更加简洁,但对于稍微复杂一点的语句,Java 注解不仅力不从心,还会让你本就复杂的 SQL 语句更加混乱不堪。 因此,如果你需要做一些很复杂的操作,最好用 XML 来映射语句。

选择何种方式来配置映射,以及认为是否应该要统一映射语句定义的形式,完全取决于你和你的团队。 换句话说,永远不要拘泥于一种方式,你可以很轻松的在基于注解和 XML 的语句映射方式间自由移植和切换。

  1. XML映射文件定义规范
    1. XML文件的名称要与Mapper接口文件的名称一致,并且放在相同的包下(同包同名)
    2. XML文件的namespace属性与Mapper接口全限定名(是指一个类或接口在Java中的完整命名,包括包名和类)一致
    3. XML文件中的SQL语句的id与Mapper接口中的方法名一致
相关推荐
听风吟丶7 小时前
深入解析 Spring Boot 自动配置:原理、实践与进阶
java·数据库·sql
风语者日志7 小时前
[LitCTF 2023]这是什么?SQL !注一下 !
android·数据库·sql
9ilk7 小时前
【基于one-loop-per-thread的高并发服务器】--- 项目介绍&&模块划分
运维·服务器·c++·后端·中间件
SimonKing7 小时前
Spring Boot还能这样玩?同时监听多个端口的黑科技
java·后端·程序员
青梅主码7 小时前
CB Insights最新发布《2025年Q3全球AI状态》:融资交易单笔规模暴增86% AI初创融资像过山车 代理AI成香饽饽
后端
CoovallyAIHub7 小时前
Cursor 2.0 太离谱了!8 个 AI 同时写代码,还能自己测!
css·后端·程序员
m0_736927047 小时前
Java面试场景题及答案总结(2025版持续更新)
java·开发语言·后端·职场和发展
间彧7 小时前
jps命令和其他Java监控工具(jcmd、jinfo等)有什么区别和联系?
后端
源码站~8 小时前
基于SpringBoot+Vue的健身房管理系统
vue.js·spring boot·后端·毕业设计·前后端分离·管理系统·健身房
程序员爱钓鱼8 小时前
Python编程实战 - 面向对象与进阶语法 - 异常类型与捕获
后端·python·ipython