使用 Gin 重构之前的 SpringBoot 电商项目,有兴趣了解 Go语言 或者找不到好的项目的童鞋可以借鉴下
这次开发我会用 好好抓版本管理以及各个文档和单元测试,尽可能做到开发规范
如果你没有看过我之前的电商项目,可以从我的仓库找一下,那个项目我会进行调整的,之前做的太不规范了,但是代码还是可以看的
希望我的项目对你能有一些帮助
本项目用到的知识或者组件部署步骤,都放在 doc 目录下
- 2021.01.10 使用 MinIO 文件管理 进行头像上传的相关管理
- 2020.12.16 Redis 缓存 首页信息,用户token信息,部分信息
- 2020.12.07 使用中间件判断用户登录状态,拦截需要登录的路由
- 2020.11.25 完成基本功能实现,其他仅有组件数据库
- Docker 部署管理项目
redis、mysql 及项目 运行在docker上(ing....)- 之后所有组件也是用 docker 管理
- 使用 ES 完成关键词搜索功能
- 使用 MQ 完成消息队列
- 使用 ELK 完成日志搜集
MinIO 文件存储
- Gin 请求框架
- Zap 日志框架
- gorm 数据库
- gconv 对象转换工具,Go 因为没有 继承多态,所以在类型转换方面支持不太好,但我们有时候又需要用到这样的功能
模块划分没有很规范,不是按照 Go 的规范来的。已经把能改的地方改了,如果有建议尽管提,因为确实没有接手过大型 Go 项目
项目对外调用接口,相当于 controller
缓存,主要是 Redis 相关功能
配置信息
存放前端代码的压缩包
中间件,如跨域支持、权限,log等
数据库模型
序列化,主要是返回给前端的相应内容进行封装,如状态码,对象等等
路由地址
请求真正处理的包