12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package models
- import (
- "../pkg/setting"
- "fmt"
- _ "github.com/go-sql-driver/mysql"
- "github.com/xormplus/xorm"
- "log"
- )
- var Engine *xorm.Engine
- func Setup() {
- var err error
- // restful 接口的 数据库初始化
- if err := SQLInit("mysql", fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8&parseTime=True&loc=Local",
- setting.DatabaseSetting.User,
- setting.DatabaseSetting.Password,
- setting.DatabaseSetting.Host,
- setting.DatabaseSetting.Name), 1000, 10,setting.DatabaseSetting.ShowXormlog); err != nil {
- log.Fatal(err.Error())
- fmt.Println("dbs 数据库初始化失败 ")
- }
- if err != nil {
- fmt.Println("dbs 数据库初始化失败 ")
- log.Fatalf("models.Setup err: %v", err)
- }
- }
- func SQLInit(driverName, dataSourceName string, maxOpenConns, maxIdleConns int, showlog bool) error {
- if Engine == nil {
- var err error
- if Engine, err = xorm.NewEngine(driverName, dataSourceName); err != nil {
- return err
- }
- if showlog {
- Engine.ShowSQL(true)
- }
- Engine.SetMaxIdleConns(maxIdleConns)
- Engine.SetMaxOpenConns(maxOpenConns)
- }
- return nil
- }
|