目录
文章目录
1 介绍2 练习友情援助1 介绍
Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点
对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错
借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范.
2 练习
本次练习继续对之前的代码进行改善,主要工作是
通过VIPER读取配置提高,配置更改效率。
配置文件里的相应内容。
server:port: 1010datasource:driverName : mysqlhost : 127.0.0.1 port : 3306database : testusername : rootpassword :charset
//配置初始化模块。func InitConfig() {WorkDir, _ := os.Getwd()viper.SetConfigName("application")viper.SetConfigType("yaml")viper.AddConfigPath(WorkDir + "/config")err := viper.ReadInConfig()if err != nil {panic(err)}}
改装成果
func InitDB() *gorm.DB {driverName := viper.GetString("datasource.driverName")host := viper.GetString("datasource.host")port := viper.GetString("datasource.port")database := viper.GetString("datasource.database")username := viper.GetString("datasource.username")password := viper.GetString("datasource.password")charset := viper.GetString("datasource.charset")fmt.Println(driverName, host, port, database)args := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=%s&parseTime=true",username,password,host,port,database,charset)fmt.Println(args)db, err := gorm.Open(driverName, args)if err != nil {panic("failed to connect database!,err:" + err.Error())}db.AutoMigrate(&Model.User{})DB = dbreturn db}
友情援助
有问题的可以关注公众号,博主会在24小时内回复。