## beego 官方文档：https://beego.me/docs/intro/

## 1、项目介绍
```
    该项目是作为一个beego的demo文件，用于demo功能的测试；
    包含的功能有：
    1、多数据库的配置 （main.go 文件中）
    2、grpc 客户端的使用  （main.go 文件中）
    3、jwt 的创建与验证 （main.go 文件中）
    4、protof 文件定义与文件生成 （grpc目录中，参考下面的go protof 文件生成方式）
    5、路由的配置与使用  （routers/router.go --> controllers）
    6、数据库增删改查   （services/AdminService.go 文件中）
    7、get 和 post 方式的接口demo，并返回josn数据   （controllers/AdminController.go 文件中）
```

## 2、文件结构
```
main.go     文件入口

conf        配置文件
controllers controller层
grpc        grpc 相关文件
    def     grpc 定义的proto文件
    gapi    proto 生成的文件
models      数据库相关类所对应的model文件
    ywtcenter   ywt_center 对应库的model文件
    ywtlog      ywt_log 对应库的model文件
routers
    router.go   路由入口
services    service层
static      静态文件
vendor      golang使用vendor目录来管理依赖包
views       存放前端页面的地方
```

## 3、go protof 文件生成方式 
* 参考文档：https://razeencheng.com/post/how-to-use-grpc-in-golang-01.html
* 在项目的根目录下执行
```
    protoc -I=grpc/def/ --go_out=plugins=grpc:grpc/ grpc/def/doctor.proto
```

## 4、grpc 服务端参考 go_test_hello_rpc 项目
* 项目地址：http://gogs.ywtinfo.com/daiyihua/go_test_hello_rpc.git