当前位置: 首页 > news >正文

Mapper代理开发——书接MaBatis的简单使用

在这个mybatis的普通使用中依旧存在硬编码问题,虽然静态语句比原生jdbc都写更少了但是还是要写,Mapper就是用来解决原生方式中的硬编码还有简化后期执行SQL

UserMapper是一个接口,里面有很多方法,都是一一和配置文件里面的sql语句的id名称所对应,
官网中有提到,这种方法不依赖于字符串字面值,更安全,其次,如果IDE有代码补全,就可以快速选择到映射好的SQL语句

使用Mapper代理方式再来实现一次
MyBatis的简单使用_北岭山脚鼠鼠的博客-CSDN博客

 1.定义SQL映射文件同名的Mapper接口,并且Mapper接口和SQL映射文件放置在同一目录下

为了达到这个效果在resources中新建和mapper所在路径一样的包,然后再使用Maven编译一下就可以在target中看见了,这个需要先将UserMapper.xml实现放到mapper里面

2.设置SQL映射文件的namespace属性为Mapper接口全限定名
如下图配置

 3.在Mapper接口中定义方法,方法名就是SQL映射文件中sql语句的id,并保持参数类型和返回值类型一致

 因为UserMapper.xml文件的位置变了,所以需要在项目配置文件里面也要改一下路径

 4.编码部分与原本有所区别

简而言之就是使用一个接口实现了一些方法对应UserMapper里面的对应sql语句,使得不需要在程序里面硬编码,并且还有自动补全
最后输出也一样还有报错

 

小细节: 如果Mapper接口名称和SQL映射文件名称相同,并在统一目录下,则可以使用包扫描的方式简化SQK映射文件的加载

 

 

http://www.lryc.cn/news/25588.html

相关文章:

  • 实体对象说明
  • JAVA中加密与解密
  • 改进YOLO系列 | ICLR2022 | OMNI-DIMENSIONAL DYNAMIC CONVOLUTION: 全维动态卷积
  • 信息收集之Github搜索语法
  • 【案例教程】拉格朗日粒子扩散模式FLEXPART
  • 试题 算法训练 自行车停放
  • 泛型与Map接口
  • Unity Bug记录本
  • B. The Number of Products)厉害
  • 一起Talk Android吧(第五百一十二回:自定义Dialog)
  • GinVueAdmin源码分析3-整合MySQL
  • 大数据框架之Hadoop:MapReduce(三)MapReduce框架原理——MapReduce开发总结
  • requests---(4)发送post请求完成登录
  • Python抓取数据具体流程
  • 【Python学习笔记】第二十四节 Python 正则表达式
  • 数字逻辑基础:原码、反码、补码
  • 有限差分法-差商公式及其Matlab实现
  • 高校就业信息管理系统
  • 【Java|golang】2373. 矩阵中的局部最大值
  • 根据指定函数对DataFrame中各元素进行计算
  • 【蓝桥杯集训·每日一题】AcWing 3502. 不同路径数
  • Java - 数据结构,二叉树
  • 模拟QQ登录-课后程序(JAVA基础案例教程-黑马程序员编著-第十一章-课后作业)
  • 【壹】嵌入式系统硬件基础
  • 当参数调优无法解决kafka消息积压时可以这么做
  • Java线程池源码分析
  • 手撕八大排序(下)
  • SAP 详细解析SCC4
  • java异常分类和finally代码块中return语句的影响
  • 【链表OJ题(二)】链表的中间节点