mybatis详解

mybatis详解

一、mybatis 核心概念

MyBatis是一个持久层的(Object-Relational Mapping)框架,即对象关系映射框架。使用简单,学习成本较低。可以执行自己手写的SQL语句,比较灵活。但是MyBatis的自动化程度不高,移植性也不高,有时从一个数据库迁移到另外一个数据库的时候需要自己修改配置,所以称只为半自动ORM框架

  1. 核心类介绍
    Configuration、SqlSessionFactory、Session、Executor、MappedStatement、StatementHandler、
    ResultSetHandler
名称意义
Configuration管理 mysql-config.xml 全局配置关系类
SqlSessionFactorySession 管理工厂接口
SessionSqlSession 是一个面向用户(程序员)的接口。SqlSession 中提供了很多操作数据库的方法
Executor执行器是一个接口(基本执行器、缓存执行器)。作用:SqlSession 内部通过执行器操作数据库
MappedStatement底层封装对象。作用:对操作数据库存储封装,包括 sql 语句、输入输出参数
StatementHandler具体操作数据库相关的 handler 接口
ResultSetHandler具体操作数据库返回结果的 handler 接口

二、流程

  1. mybatis处理流程
    在这里插入图片描述
  2. 执行流程
    在这里插入图片描述
    上面解析流程结束后会生成一个Configration对象,包含所有配置信息,然后会创建一个SqlSessionFactory对象,这个对象包含了Configration对象。
  3. 总结
    对于MyBatis启动的流程(获取SqlSession的过程)这边简单总结下:
    SqlSessionFactoryBuilder解析配置文件,包括属性配置、别名配置、拦截器配置、环境(数据源和事务管理器)、Mapper配置等;解析完这些配置后会生成一个Configration对象,这个对象中包含了MyBatis需要的所有配置,然后会用这个Configration对象创建一个SqlSessionFactory对象,这个对象中包含了Configration对象;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值