• MyBatis拦截器(JDBC的执行流程、MyBatis执行流程、Mybatis拦截器)


    1.JDBC的执行流程

    JBDC的底层主要是三个接口对象,Connection、Statement、ResultSet。

    Connection用于建立与数据库的连接,Statement用于向数据库发送sql语句,ResultSet用于封装sql查询语句的结果。

    原始的JDBC操作数据库主要有以下几个步骤:

    1.注册驱动

    使用 Class.forName() 方法加载数据库驱动程序类。

    2.获取连接对象

    JDBC的底层其实是使用Socket进行连接数据库的。打开Connection .

    3.执行SQL语句,返回执行结果

    通过获取Statement实例执行SQL语句。

    4.处理执行结果

    最后返回的结果集是ResultSet。

    5.释放资源

    JBDC底层原理解析-CSDN博客文章浏览阅读374次。JBDC(Java Database Connectivity),就是使用Java语言操作关系型数据库的一套API。_jbdchttps://blog.csdn.net/qq_51634677/article/details/131445572?spm=1001.2014.3001.5502

    2.MyBatis执行流程

    Executor执行器

    Executor 执行器则是 MyBatis 框架中的 SQL 执行工具,它负责执行 MappedStatement 中定义的 SQL 语句,并根据配置决定是否开启缓存、是否处理批量操作等。当调用 SqlSession 的 CRUD 方法时,SqlSession 会委托给它的内部 Executor 执行器去完成具体的 SQL 执行工作。

    Executor 是 MyBatis 执行 SQL 的入口,它是一个策略模式的体现,有多种实现(如 SimpleExecutor、ReuseExecutor、BatchExecutor 等),分别适用于不同的场景(例如是否启用缓存、是否进行批处理等)。

    当用户通过 SqlSession 执行某个数据库操作时,Executor 会根据指定的方法名和参数找到相应的 MappedStatement,并负责执行该 SQL 语句。

    1.SimpleExecutor – SIMPLE 就是普通的执行器。

    2.ReuseExecutor-执行器会重用预处理语句(PreparedStatements)

    3.BatchExecutor --它是批处理执行器

    MappedStatement 对象

    MappedStatement 对象是 MyBatis 核心配置文件中每一个