1.1 API服务模块
goctl
使用api
文件生成api服务
命令:
\go-zero-micro\api> goctl api go -api ./doc/all.api -dir ./code/ucenterapi
1.2 RPC服务模块
goctl
使用protoc
文件生成rpc服务
命令:
goctl rpc protoc ./proto/ucenter.proto --go_out=./code/ucenter --go-grpc_out=./code/ucenter --zrpc_out=./code/ucenter --multiple
注意:--go_out
、--go-grpc_out
、--zrpc_out
三者配置的路径需要完全一致,否则会报下列错误。
the output of pb.go and _grpc.pb.go must not be the same with --zrpc_out
1.3 model服务模块
1、生成sqlx代码命令 单表:
goctl model mysql ddl -src="./rpc/database/sql/user/zero_users.sql" -dir="./rpc/database/sqlx/usermodel" -style=go_zero
多表:
goctl model mysql ddl -src="./rpc/database/sql/user/zero_*.sql" -dir="./rpc/database/sqlx/usermodel" -style=go_zero
使用数据库连接方式:
goctl model mysql datasource -url="root:root@tcp(127.0.0.1:3357)/go-zero-micro" -table="zero_users" -dir="./rpc/database/sqlx/usermodel"
2、生成sqlc代码命令 单表:
goctl model mysql ddl -src="./rpc/database/sql/user/zero_users.sql" -dir="./rpc/database/sqlc/usermodel" -style=go_zero -cache
多表:
goctl model mysql ddl -src="./rpc/database/sql/user/zero_*.sql" -dir="./rpc/database/sqlc/usermodel" -style=go_zero -cache
使用数据库连接方式:
goctl model mysql datasource -url="root:root@tcp(127.0.0.1:3357)/go-zero-micro" -table="zero_users" -dir="./rpc/database/sqlc/usermodel" -cache