dao.go 633 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package dao
  2. import (
  3. "fmt"
  4. "gorm.io/driver/mysql"
  5. "gorm.io/gorm"
  6. "gorm.io/gorm/logger"
  7. "wallet-server/conf"
  8. )
  9. type Dao struct {
  10. db *gorm.DB
  11. }
  12. func InitMysqlDB() (*Dao, error) {
  13. conf := conf.GetConfig()
  14. dsn := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8&parseTime=True&loc=Local",
  15. conf.Mysql.User,
  16. conf.Mysql.Password,
  17. conf.Mysql.Host,
  18. conf.Mysql.DB,
  19. )
  20. db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{
  21. //Logger: logger.Default.LogMode(logger.Info),
  22. Logger: logger.Default.LogMode(logger.Silent),
  23. })
  24. if err != nil {
  25. return nil, err
  26. }
  27. db.AutoMigrate(&Transaction{})
  28. return &Dao{
  29. db: db,
  30. }, nil
  31. }