跳到主要内容

2 篇博文 含有标签「mybatis」

查看所有标签

MyBatis 3.5 源码分析(一):配置解析、SqlSessionFactory 与 Mapper 代理

· 阅读需 3 分钟
Apache王也道长
软件开发者与技术作者
  1. 首先我们了解一下mybatis中的几个核心概念
  • Configuration 配置,可以理解为mybatis的大管家,管理一切
  • Environment 环境,这个主要负责数据源,事务管理器
  • MappedStatement mapper.xml对应的声明类,定义mapper中所有的标签,属性
  • Interceptor 拦截器,可以拦截Executor,ParameterHandler,ResultSetHandler,StatementHandler
  • SqlSessionFactory SQL会话管理工厂类
  • SqlSession SQL会话,定义了增,删,改,查,提交,回滚,获取java.sql.Connection,获取mapper
  • MapperProxy mapper代理类,生成接口代理对象
  • Executor 执行器,主要负责增,删,改,查,提交,回滚的执行
  • ParameterHandler 参数处理器,主要负责参数设置
  • ResultSetHandler 查询结果集处理器,用来封装ResultSet对应的结果
  • StatementHandler Statement处理器,用来执行Statement相应的操作

阅读 MyBatis 源码可以从一次 Mapper 方法调用向内追踪:代理如何确定 MappedStatement、参数如何转换、执行器如何发起 JDBC 请求。先掌握主链路,再分析缓存和插件更清晰。

总访问量 -- · 访客数 --