多活高可用服务 MAS-beego-orm

时间:2025-02-12 14:58:59

beego-orm

创建github.com/astaxie/beego/orm包orm.Ormer数据源,进行mysql操作

依赖引入,配置文件或配置信息修改参考原生DB

初始化创建beego-orm数据源DevSporeOrm,后续执行Mysql相关操作。

由于beego-orm需要注册使用的model,以Teacher,Student为例。
type Teacher struct { Id   int Name string Age  int}type Student struct { Id   int Name string Age  int}
  • 配置文件方式创建。
    import (    "log"    "github.com/astaxie/beego/orm"    _ "github.com/huaweicloud/devcloud-go/sql-driver/mysql")var (    DevSporeOrm orm.Ormer    err error)func init() {    // 1 注册devspore_mysql    err = orm.RegisterDriver("devspore_mysql", orm.DRMySQL)    if err != nil {        log.Fatalln(err)    }    // 2 注册使用model    orm.RegisterModel(new(Teacher),new(Student))    // 3 创建数据源    err = orm.RegisterDataBase("default", "devspore_mysql", "./conf/resources/config_mysql.yaml")    if err != nil {        log.Fatalln(err)    }    DevSporeOrm = orm.NewOrm()}
  • 配置信息方式创建。
    import (    "log"    "github.com/astaxie/beego/orm"    devspore "github.com/huaweicloud/devcloud-go/sql-driver/mysql")var (    DevSporeOrm orm.Ormer    err error)func init() {    // 1 注册devspore_mysql    err = orm.RegisterDriver("devspore_mysql", orm.DRMySQL)    if err != nil {        log.Fatalln(err)    }    // 2 注册使用model    orm.RegisterModel(new(Teacher),new(Student))    // 3 创建数据源    devspore.SetClusterConfiguration(mysqlConfiguration())    err = orm.RegisterDataBase("default", "devspore_mysql", "")    if err != nil {        log.Fatalln(err)    }    DevSporeOrm = orm.NewOrm()}
support.huaweicloud.com/devg-mas/mas-devg-0054.html