路由
这个比较简单,就是注册路由的作用了
1 | go复制代码package route |
启动流程
这个之前也介绍过,就是一个稍微复杂一点的优雅重启方案,
1 | go复制代码// 启动服务 (优雅关机) |
优化代码-db 不要对外暴露
之前的代码里 把db 对外暴露 其实不合适,最好的方案还是 提供一个close 方法 这样对外暴露方法 不对外暴露db 是最合适的
1 | go复制代码// 初始化mysql |
1 | vbscript复制代码var db *sqlx.DB |
优化配置项
前面的配置项 我们都是 通过字符串来取的,可读性不佳,我们现在要想办法 把config 转成一个结构体来处理,这样代码的可读性会更好
1 | go复制代码type AppConfig struct { |
然后改一下我们的viper读取的流程 其实主要就是序列化一下
1 | go复制代码var Config = new(AppConfig) |
修改一下 mysql的init方法 这回传递一个mysql的config参数
1 | arduino复制代码func Init(config *setting.MysqlConfig) (err error) { |
使用的时候 只要这样即可
1 | go复制代码// 初始化mysql |
本文转载自: 掘金