package common import ( "encoding/json" "io/ioutil" ) type Config struct { Projectnr string `json:"projectnr"` // 零件项目号,G38 / G18 / G68 Server string `json:"server"` // 数据库服务器 Userid string `json:"userid"` // 数据库登陆用户名 Password string `json:"password"` // 数据库登陆密码 Database string `json:"database"` // 数据库名 Port int `json:"port"` // 数据库端口 Inbox string `json:"inbox"` // TOD收件箱 Outbox string `json:"outbox"` // TOD发件箱 Readinterval int `json:"readinterval"` // 服务读取收件箱的间隔时间,单位秒 Leaseduration int `json:"leaseduration"` // 服务租约长度,单位秒,用于监控服务是否处于激活状态 } var ( // 单例 G_Config *Config ) // 加载打印配置 func InitConfig(filename string) (err error) { var ( content []byte conf Config ) // 1, 把配置文件读进来 if content, err = ioutil.ReadFile(filename); err != nil { return } // 2, 做JSON反序列化 if err = json.Unmarshal(content, &conf); err != nil { return } // 3, 赋值单例 G_Config = &conf return }