Skip to content

shuifa/go-bank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go-bank project for study golang

  • 数据库表设计design网站 dbdiagram.io

  • 安装 docker brew install docker --cask,学习docker 镜像、容器、数据卷的使用。拉取Postgres镜像并启动容器运行

  • golang数据迁移包 golang-migrate ,使用 migrate 管理数据迁移和版本切换

  • 使用 Makefile 创建项目命令

  • 生成 CRUD 代码包 sqlc sqlc 的 yml文件配置

  • golang 单元测试包 testify main_testgo test -v ./...

  • golang操作事务封装,协程测试数据库并发,学习数据库死锁、锁超时。使用乐观锁更改余额。保证相同的操作顺序避免死锁。

  • 事务隔离级别(读未提交、读已提交、可重复读、序列化)分别会遇到什么问题(脏读、幻读、不可重复读、无法序列化)

  • 使用 GitHub Actions 在push代码时运行代码测试(CI),ci工作流 job --> steps --> actions。定义工作流的service和dependence

  • 开发restful风格的 webapigin-webpostman测试api

  • 从文件、环境变量、配置中心读取配置的包 viper

  • mockdb 的包 mock,编写测试用例覆盖所有情况

  • 自定义验证器 gin 框架的bingding包

  • 数据库迁移 migrate,处理db error

  • 密码生成与验证 golang.org/x/crypto/bcrypt

  • 测试包自定义匹配器 testify

  • authorization 包 "github.com/o1egl/paseto", "github.com/dgrijalva/jwt-go", 本地验证和远程验证

  • gin 实现自定义中间件 auth

About

study golang

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages