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接口中的方法名一致
相关推荐
无限大62 小时前
计算机十万个为什么--数据库索引
后端
学历真的很重要2 小时前
VsCode+Roo Code+Gemini 2.5 Pro+Gemini Balance AI辅助编程环境搭建(理论上通过多个Api Key负载均衡达到无限免费Gemini 2.5 Pro)
前端·人工智能·vscode·后端·语言模型·负载均衡·ai编程
地瓜伯伯2 小时前
Nginx终极配置指南:负载均衡、限流、反向代理、IP白名单、SSL、云原生、DNS解析、缓存加速全都有
spring boot·nginx·spring·spring cloud·微服务·云原生·负载均衡
+VX:Fegn08953 小时前
计算机毕业设计|基于springboot + vue心理健康管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
狂炫冰美式5 小时前
不谈技术,搞点文化 🧀 —— 从复活一句明代残诗破局产品迭代
前端·人工智能·后端
databook5 小时前
数据会说谎?三大推断方法帮你“审问”数据真相
后端·python·数据分析
代码栈上的思考6 小时前
深入解析Spring IoC核心与关键注解
java·后端·spring
expect7g7 小时前
Paimon源码解读 -- Compaction-2.KeyValueFileWriterFactory
大数据·后端·flink
小灰灰搞电子7 小时前
Rust 动态分发(dyn Trait)详解
开发语言·后端·rust
码事漫谈7 小时前
深入剖析进程、线程与虚拟内存
后端