这是我参与「第三届青训营 -后端场」笔记创作活动的的第5篇笔记。
1. 理解 Database/SQL
1.1 基本用法
1.2 设计原理
连接池:
Drive连接接口
Drive 连接接口2:
2. GORM 的使用简介
2.1 背景知识
设计简洁、功能强大、自由扩展的全功能ORM
2.2 GORM 的基本用法
CRUD创建
2.3 模型定义
模型定义-惯例约定
2.4 关联介绍
2.4.1 关联介绍-CRUD
2.4.2 关联操作-Preload/Joins预加载
2.4.3 关联操作-级联删除
总结:
- GORM 的基本用法
- Model 定义
- 惯例约定
- 关联介绍
3. GORM 的设计原理
3.1 SQL 是怎么生成的
3.1.1 SQL 是怎么生成的-自定义Builder
3.1.2 SQL 是怎么生成的-扩展子句
3.1.3 SQL 是怎么生成的-选择子句
3.2 插件是怎么工作的
3.2.1 插件是怎么工作的-多租户
3.2.2 插件是怎么工作的-多数据库、读写分离
3.3 ConnPool是什么
3.4 Dialector是什么
小结:
- SQL 生成的机制
- 插件扩展机制
- ConnPool 扩展机制
- Dialector 扩展机制
4. GORM 最佳实践
4.1 数据序列化与SQL表达式-SQL表达式更新创建
4.2 批量数据操作
4.2.1 批量数据操作-批量创建/查询
4.2.2 批量数据操作-批量更新
4.2.3 批量数据操作-批量数据加速操作
4.3 代码复用、分库分表、Sharding
4.3.1 代码复用
4.3.2 分库分表
4.3.3 Sharding
4.4 混沌工程/压测
4.5 Logger/Trace
4.6 Migrator
4.6.1 Migrator-数据迁移管理
4.6.2 Migrator-数据库迁移
4.7 Gen代码生成/RawSql
4.7.1 RawSql
4.7.2 Gen
4.8 安全问题
小结:
GORM 最佳实践
定制企业级开发
FAQ & 工程成长