阿里P7架构师精解Mybatis源码,浅论程序员的修身之道
Mybatis基本纲要
1. Mybatis组成
· 动态SQL
· Config配置
· Mapper配置
2. 核心源码分析
· Configuration源码解析
· SqlSessionFactory源码解析
· SqlSession源码解析
· SqlSessionManager源码解析
3. 手写Mybatis框架
Mybatis是什么?
Mybatis本质是一种半自动的ORM框架,前身是iBatis,其源于“Internet”和“abatis”的组合,除了POJO和映射关系之外,还需要编写SQL语句;
Mybatis映射三要素:
POJO
映射规则
SQL
Mybatis快速入门
1. 加入mybatis的依赖
2. 添加mybatis的配置文件
3. 场景介绍
4. 编写实体类、mapper接口以及mapper xml文件;
5. 编写测试代码
MyBatis核心流程三大阶段
1.初始化阶段
读取XML配置文件和数据库配置文件中的信息加载到configuration对象中;
2.动态代理阶段
3.数据读写阶段
话说SqlSession
Sqlsession意味着创建数据库会话,代表了一次与数据库的连接;
是Mybatis对外提供数据访问的主要API(来试试iBatis编程的方式吧);
实际上Sqlsession的功能都是基于Excutor来实现的;
MyBatis两种编程模型
Mybatis封装了iBatis编程模型,使用sqlsession对外提供数据库的访问;
使用mapper接口编程,就可以访问数据库;
简化版Mybatis实现思路
论程序员的修身之道
看源码是Java程序员内功修炼必经之路
1. 看源码学习优雅、高效的代码编写经验;
2. 提升微观的架构设计能力,重点在思维和理念;
3. 解决工作中、学习中的各种疑难杂症;
4. 在BATJ一线互联网公司面试中展现优秀的自己;
小编这边保存了一套架构技术体系的图谱,有需要进阶的欢迎收藏:
高性能架构专题
开源框架解析

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里P10毕玄:Java大牛程序员的学习成长路线
采访作者:云篆,再次编辑:徐雷 在这篇《Java大牛程序员的成长路线》里,阿里基础设施负责人P10毕玄结合自己的经历跟大家讲述了他在各个角色上成长的感受。 在他的职业经历中,从小白到大牛的过程,在成长方面经历了技术能力的成长、架构能力的成长,以及现在作为一个在修炼中的技术 Leader 的成长。 阿里巴巴基础设施负责人,HSF创始人、T4创始人、HBase负责人 工作这么些年了,看到了各种各样的程序员,也看到了各种各样的成长路线,说说Java大牛自己的一些观点吧,如何成为技术大牛,还能保持满头秀发? 其中技术能力和架构能力的成长是所有程序员都很需要的,值得所有正为职业发展而迷茫的技术同学细细品味。 欢迎加入阿里巴巴Java技术学习群,钉钉扫码。 1、技术能力成长 我大学读的是生物系,缺少了专业的训练,这个使得我在技术能力上其实欠缺的更多。回头想想
- 下一篇
2018Postgres中国用户大会(大象汇)—最全资料下载,PPT+回顾视频
“Postgres中国技术大会2018(大象汇,第8届)”于2018年12月15、16日在浙江吉利控股集团有限公司总部(杭州市滨江区江陵路1760号)举行.大会由中国Postgres用户会(China Postgres User Group,简称:CPUG)主办,是一场汇聚各界PostgreSQL大拿、交流最新业界技术动态和真实应用案例的盛宴。PG大象汇的成功举办推动了PostgreSQL数据库在中国的发展,也拉近了中国与世界的距离。 本次PG大象汇由云栖社区独家现场直播 精彩回顾: 15日主会场 时间 议题 演讲嘉宾 直播回顾 博文 资料下载 9:00-9:40 吉利CIO致辞,大会及社区介绍和其他安排 大会组委会 https://yq.aliyun.com/live/735 — — 9:40-10:20 如何构建PostgreSQL大生态之我见 周正中 https://yq.aliyun.com/live/736 — https://yq.aliyun.com/articles/667291 10:20-11:10 PG之高可用特性、工具及架构设计2 汪洋 https://yq.a...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- 2048小游戏-低调大师作品
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程