Skip to content

AbnerHuang2/mini-mybatis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mini-mybatis

mini-mybatis是一个简单版本的mybatis实现,用于学习mybatis的核心功能实现。

查看效果

前置条件

  1. 需要安装mysql数据库
  2. 需要创建数据库skitii_mybatis
  3. 导入src/test/resources目录下的sql脚本skitii_mybatis.sql

运行src/test包下的ApiTest中测试方法可以查看mybatis的功能效果

运行mybatis-spring/test包下的SpringApiTest和SpringBootApiTest中测试方法可以查看mini-mybatis整合spring和springboot的效果

概览图

img.png

Mybatis核心功能实现

核心

如何写一些接口和xml就实现数据库的增删改查?在这个过程中mybatis做了些什么?

  1. 元数据管理,将定义xml格式解析元数据【也不一定是xml,也可能是Java注解等,如何扩展】
  2. 代理模式【动态代理】
  3. 数据库事务管理
  4. 具体的SQL语句执行【前置解析,参数处理,结果集解析,映射,后置逻辑处理】

高级特性

  1. 二级缓存实现原理
  2. 插件扩展实现原理
  3. spring整合实现原理

About

实现mybatis核心功能

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages