Kevin's blog Kevin's blog
首页
  • AI基础
  • RAG技术
  • 提示词工程
  • Wireshark抓包
  • 常见问题
  • 数据库
  • 代码技巧
  • 浏览器
  • 手册教程
  • 技术应用
  • 流程规范
  • github技巧
  • git笔记
  • vpn笔记
  • 知识概念
  • 学习笔记
  • 环境搭建
  • linux&运维
  • 微服务
  • 经验技巧
  • 实用手册
  • arthas常用
  • spring应用
  • javaAgent技术
  • 网站
友情链接
  • 分类
  • 标签
  • 归档

Kevin

你可以迷茫,但不可以虚度
首页
  • AI基础
  • RAG技术
  • 提示词工程
  • Wireshark抓包
  • 常见问题
  • 数据库
  • 代码技巧
  • 浏览器
  • 手册教程
  • 技术应用
  • 流程规范
  • github技巧
  • git笔记
  • vpn笔记
  • 知识概念
  • 学习笔记
  • 环境搭建
  • linux&运维
  • 微服务
  • 经验技巧
  • 实用手册
  • arthas常用
  • spring应用
  • javaAgent技术
  • 网站
友情链接
  • 分类
  • 标签
  • 归档
  • 基础

  • JVM

  • Spring

    • SpringMVC
    • Spring
    • Mybatis
      • 1 Mybatis常见问题
        • 1.1 Mybatis是如何进行分页的?分页插件的原理是什么?
        • 1.2 Mybatis有哪些动态sql标签?
        • 1.3 Mybatis Xml映射文件中有哪些常见标签?
        • 1.4 Mybatis的一级、二级缓存
        • 1.5 Mybatis一对一、一对多的关联查询
      • 2 Mybatis插件
        • 2.1 Mybatis插件的运行原理?
        • 2.2 如何编写一个Mybatis插件?
  • Redis

  • 消息中间件

  • 持久化

  • 算法

  • 网络

  • 系统架构

  • 知识整理
  • Spring
luoxiaofeng
2022-05-08
目录

Mybatis

# 1 Mybatis常见问题

# 1.1 Mybatis是如何进行分页的?分页插件的原理是什么?

1.Mybatis使用RowBounds对象进行分页,它是针对结果集进行的内存分页。

2.分页插件的原理是使用Mybatis提供的插件接口,实现自定义插件,可以在插件的拦截方法内拦截待执行的sql,然后重写sql来完成物理分页。

# 1.2 Mybatis有哪些动态sql标签?

Mybatis提供了9种动态sql标签:trim、where、set、foreach、if、choose、when、otherwise、bind

# 1.3 Mybatis Xml映射文件中有哪些常见标签?

select、insert、update、delete、resultMap、parameterMap、sql、include,加上动态sql9个标签,其中<sql>为sql片段标签,通过<include>标签引入sql片段。

# 1.4 Mybatis的一级、二级缓存

一级缓存:Mybatis的一级缓存是利用SqlSession实现的,同样的sql,如果在同一个SqlSession执行,就会利用一级缓存,提高查询效率。

二级缓存:存储作用域为Mapper(Namespace),可自定义存储源,如redis。

# 1.5 Mybatis一对一、一对多的关联查询

# 2 Mybatis插件

# 2.1 Mybatis插件的运行原理?

Mybatis使用JDK的动态代理,为指定的接口生成代理对象,实现接口方法拦截功能。Mybatis仅支持4种指定接口的插件,分别是:ParameterHandler、ResultSetHandler、StatementHandler、Executor。

# 2.2 如何编写一个Mybatis插件?

实现Mybatis的Interceptor接口并重写intercept()方法,然后给插件编写注解,指定要拦截哪一个接口的哪些方法即可。另外还需要在配置文件中配置好编写的插件。

#Spring
上次更新: 2022/06/02, 11:20:10
Spring
基础

← Spring 基础→

最近更新
01
AI是如何学习的
06-05
02
chatGpt提示原则
06-05
03
提示词工程实践指南
06-05
更多文章>
| Copyright © 2022-2025 Kevin | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式