41 lines
817 B
Go
41 lines
817 B
Go
package utils
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/spf13/viper"
|
|
"gorm.io/driver/mysql"
|
|
"gorm.io/gorm"
|
|
"gorm.io/gorm/logger"
|
|
"log"
|
|
"os"
|
|
"time"
|
|
)
|
|
|
|
func InitConfig() {
|
|
viper.SetConfigName("app")
|
|
viper.AddConfigPath("config")
|
|
err := viper.ReadInConfig()
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
fmt.Println("config app init")
|
|
|
|
}
|
|
func InitMySQL() *gorm.DB {
|
|
//自定义日子模板 打印SQL语句
|
|
newLogger := logger.New(
|
|
log.New(os.Stdout, "\r\n", log.LstdFlags),
|
|
logger.Config{
|
|
SlowThreshold: time.Second, //慢sql日志
|
|
LogLevel: logger.Info, //级别
|
|
Colorful: true, //颜色
|
|
|
|
})
|
|
DB, err := gorm.Open(mysql.Open(viper.GetString("mysql.dns")), &gorm.Config{Logger: newLogger})
|
|
if err != nil {
|
|
panic("failed to connect database")
|
|
}
|
|
fmt.Println("config mysql init")
|
|
return DB
|
|
}
|