• 2024-08-25MyBatis源码(6)拦截器
    1、目标本文的主要目标是学习MyBatis拦截器的源码,本文将以插入操作为例debug拦截器相关的源码2、拦截器源码分析调用mapper接口的insert插入记录方法,会调用SqlSession对象的insert方法SqlSession执行insert方法Spring容器会创建SqlSessionTemplate对象,为了实现插入操
  • 2023-11-17mybatis拦截器:实现拦截update语句插入列值
    1、修改sql的时机在预编译SQL(prepare方法)前加入修改的逻辑。可以对sql处理也可以对映射类做处理(本例是对映射类做处理)。2、准备的xml文件mybatis-config.xml<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEconfigurationPUBLIC"-//mybatis.org//DTDConfig
  • 2023-05-10mybatis运行原理-- 总述
    1.根据mybatis配置文件和mapper映射文件,初始化出Configuration对象。得到sqlSessionFactory,包含数据库的信息,和所有的mapper路径,mapper接口路径可用包扫描的方式代替;2.sqlSessionFactory.openSession得到sqlSession,里面已经包含了Configuration以及Executor(defaultExecutorType
  • 2022-10-25Mybatis原理分析-核心组件
    Mybatis四大对象指的是:Executor,StatementHandler,ParameterHandler和ResultSetHandler对象。四个对象在SqlSession内部共同协作完成sql语句的执行,同时也是我们自定义插件拦
  • 2022-10-24mybatis 四大组件
     一、Mybatis四大组件二、SqlSession四大对象这里阐述一下上图的流程Exeutor发起sql执行任务1、先调用statementHandler中的prepare()进行SQL的编译2、然后调用st
  • 2022-08-21Mybatis源码5 StatementHandler ,ParameterHandler
    Mybatis源码5StatementHandler,ParameterHandler一丶概述前面我们总结了SqlSession--->CachingExecutor--->BaseExector---->Excutor子类doQuery,doUpdate的执行流程,my