项目简介
本项目是个人学习Go语言时所编写的二手车交易小程序后端系统。采用monolith架构模式构建,包含后端程序、前端管理程序和小程序三部分,方便维护。此项目模拟实际开发流程,有助于开发者掌握Go语言在后端管理系统开发中的应用。
项目的主要特性和功能
- 权限管理:运用RABC权限模型,通过JWT编写中间件进行权限验证,管控后端管理用户权限。
- 数据库操作:使用sqlx + template方式,将SQL写在模板中编译,实现商品、用户、角色等数据的增删改查。
- 异常处理:用中间件进行全局异常处理,repo里用error处理,handler抛panic,中间件统一返回错误响应。
- 事务管理:将事务处理逻辑提到中间件,service层开启事务并将数据库连接放于gin.Context,repo层从中获取连接操作,出现问题在中间件回滚事务。
- 资源嵌入:利用embbed将resources目录下的资源文件打包嵌入到Go程序中。
- 文件处理:支持文件上传、移动、删除等操作,可用于用户头像上传等场景。
- 数据抓取:实现对
DonCheDi
网站的爬虫程序,用于数据收集。 - 分页查询:通过定义
Pageable
结构体及相应查询方法,实现数据的分页查询。
安装使用步骤
- 下载源码:从项目仓库下载本项目的源码文件。
- 安装依赖:在项目根目录下,使用
go mod tidy
命令安装所需依赖库。 - 配置数据库:依据项目中的数据库连接配置,设置好数据库地址、用户名、密码等信息。
- 启动项目:在命令行执行
go run server.go
,启动项目并监听指定端口。 - 测试调试:通过发送HTTP请求或使用前端管理程序、小程序客户端进行测试和调试。
- 项目部署:根据实际需求,选择合适的方式将项目部署到云服务器或本地服务器。
- 功能扩展:可根据业务需求,扩展新的API接口或修改数据模型。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】