• Home
  • Archives
  • 随笔
所有文章 友链 关于我

  • Home
  • Archives
  • 随笔

动手写mybatis

发布于: 2019-04-28
更新于: 2023-07-09

mybatis

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
最大特点在于手动编写 SQL,提供映射标签,实现对象与数据库的 ORM(Object Relational Mapping)字段关系映射

这篇文章基于公众号 Java 技术栈《从 0 开始手写一个 Mybatis 框架,三步搞定!》 详情点我

这里做了个项目 demo,在子 module 下

原理以及架构图

这里就主要以架构图和原理来进行讲解引述。

架构图

Bean 类

  • Function

    存储 sql

  • MapperBean

    Interface+ List<Function>

  • Mapper【UserMapper】

    做一个 mapper 接口类,关联到 mapper.xml

  • User

    用户 bean

执行器

  • Executor

    <T> T query(String statement, Object parameter);

  • MyExecutor

    实现接口,建立 connection,并执行 sql

sql 执行的原理

待学习 //TBD
https://www.cnblogs.com/cxuanBlog/p/12248536.html

动手写mybatis
/archives/7ceed006/
作者
tyrantqiao
发布于
2019-04-28
更新于
2023-07-09
许可协议
CC BY-NC-SA 4.0
赏

蟹蟹大佬的打赏,大家一起进步

支付宝
微信
  • java
  • 源码
  • mybatis

扫一扫,分享到微信

微信分享二维码
Java面经_2019
旅游杂谈-泰国
© 2024 tyrantqiao 本站总访问量次 本站访客数人次 载入天数...载入时分秒...
  • 所有文章
  • 友链
  • 关于我

tag:

  • 复盘
  • 我
  • 规划
  • java
  • 面试
  • 源码
  • 架构
  • Hadoop
  • HTTP
  • TCP
  • 学习笔记
  • IDEA
  • maven
  • idea
  • Java
  • jdk
  • 面经
  • linux
  • 爱情
  • mysql
  • 性能
  • sql
  • Mysql
  • JAVA
  • 技术
  • Redis
  • MQ
  • Spring
  • 数据库
  • TIDB
  • spring
  • unity
  • chatgpt
  • 经验分享
  • 前端
  • redis
  • vue
  • git
  • shadowsocks
  • hexo
  • blog
  • bug
  • 开发
  • 业务
  • jvm
  • 算法
  • MySQL
  • nginx
  • Linux
  • mq
  • db
  • springCloud
  • ssh
  • python
  • 爬虫
  • test
  • vim
  • 影视剧
  • 中间件
  • 事务
  • 性格
  • 音乐
  • 程序员
  • 随笔
  • mybatis
  • 演讲
  • 域名
  • 猫咪
  • 她
  • github
  • 计划
  • 旅游
  • 软件
  • 心理
  • 情商
  • 幽默
  • 才艺
  • 穿搭
  • 编程
  • 排序
  • 查找
  • 缓存
  • 网络
  • 设计模式
  • c
  • 课程设计
  • centos
  • 数学
  • 本网站主题yilia设计者的主页
如果有问题或者想讨论的可以联系[email protected]或者[email protected]