123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- package db
- import (
- "app.yhyue.com/moapp/jybase/mongodb"
- "context"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/util/gconv"
- )
- type (
- mgConf struct {
- Address string `json:"address"`
- Size int `json:"size"`
- DbName string `json:"dbName"`
- ReplSet string `json:"replSet"`
- UserName string `json:"userName"`
- Password string `json:"password"`
- }
- mgObj struct {
- mgMap map[string]*mongodb.MongodbSim
- }
- )
- var (
- MG = &mgObj{
- mgMap: map[string]*mongodb.MongodbSim{},
- }
- )
- func init() {
- var (
- ctx = context.Background()
- )
- for key, val := range g.Cfg().MustGet(ctx, "mongodb").Map() {
- var cf mgConf
- if err := gconv.Struct(val, &cf); err != nil {
- g.Log().Errorf(ctx, "初始化mongodb %s出错", key)
- continue
- }
- mgo := &mongodb.MongodbSim{
- MongodbAddr: cf.Address,
- Size: cf.Size,
- DbName: cf.DbName,
- ReplSet: cf.ReplSet,
- UserName: cf.UserName,
- Password: cf.Password,
- }
- mgo.InitPool()
- MG.mgMap[key] = mgo
- g.Log().Infof(ctx, "初始化 mongodb %s 成功", key)
- }
- }
- func (t *mgObj) DB(alias ...string) *mongodb.MongodbSim {
- if len(alias) != 0 {
- for _, s := range alias {
- if esObj, ok := t.mgMap[s]; ok {
- return esObj
- }
- }
- }
- return t.mgMap["default"]
- }
|