这是我参与「第五届青训营 」伴学笔记创作活动的第 3 天
一、本堂课重点内容:
- 通过实践熟悉之前学到的知识
- 掌握Hertz/Kitex/Gorm的基本用法
- 通过实战,将三件套应用于后端开发任务
二、详细知识点介绍:
- 使用Gorm实现连接数据库,以及数据库的各种DDL、DML、DCL的实现。了解Gorm的约定。
- Gorm通过驱动的方式连接数据库。支持MySQL、SQLServer等
- Gorm提供了Begin、Commit、Rollback方法用于使用事务。Transaction用于自动提交事务。
- 使用Find查询多条数据,查询不到数据不会返回错误。当使用结构体为条件查询时,GORM只会查询非零值字段。使用Struct更新时,只会更新非零值。通过Map可以规避。
- 删除数据分为物理删除和软删。
- hook是在创建、查询、更新、删除等操作之前、之后自动调用的函数。如果Hook返回错误,Gorm回滚。
- 使用SkipDefaultTransaction关闭默认事务。
- PrepareStmt缓存预编译语句可以提高后续调用的速度。
- 目前Kitex已经对接了主流的服务注册与发现中心etcd、nacos。
- Hertz http框架 提供了GET、POST、PUT、DELETE、ANY等方法用于注册路由。
- Hertz提供了路由分组的功能。静态路由>命名路由>通配路由。
- Hertz参数绑定。
- Hertz的中间件主要为客户端中间件和服务端中间件。
- Hertz提供了HTTP Client用于帮助用户发送HTTP请求。
- Hertz提供了代码生成工具Hz。
三、实践练习例子:
- 使用Hertz、Kitex、Gorm搭建出来的具备一定业务逻辑的后端API项目。
四、课后个人总结:
- 后端开发Go语言相比JAVA,更加简洁。但是整体项目的业务逻辑还是很相似的。
- Kitex是一个比较陌生的组件,还需要通过阅读文档进一步学习。
五、引用参考: