12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package setting
- import (
- "fmt"
- "os"
- "path/filepath"
- "github.com/spf13/viper"
- )
- type DataBaseInfo struct {
- Db string `toml:"Db" `
- DbHost string `toml:"DbHost" `
- DbPort string `toml:"DbPort" `
- DbName string `toml:"DbName" `
- DbUser string `toml:"DbUser" `
- DbPassWord string `toml:"DbPassWord" `
- }
- type SettingInfo struct {
- Limit string `toml:"Limit" `
- ColLimit string `toml:"ColLimit" `
- }
- var SqlMaps map[string]any
- var DbInfo DataBaseInfo
- var SInfo SettingInfo
- func init() {
- v := viper.New()
- //v.SetConfigFile("/home/gtong/GO/xgx/XGX/config.toml")
- executablePath, err := os.Executable()
- if err != nil {
- // 处理错误
- }
- configFilePath := filepath.Join(filepath.Dir(executablePath), "config.toml")
- //fmt.Println("configFilePath", configFilePath)
- v.AddConfigPath(".")
- v.SetConfigFile(configFilePath)
- v.SetConfigFile("./config.toml")
- if err := v.ReadInConfig(); err != nil {
- if _, ok := err.(viper.ConfigFileNotFoundError); ok {
- fmt.Printf("配置文件不存在:%v\n", err)
- } else {
- fmt.Printf("配置文件存在,解析失败:%v\n", err)
- }
- }
- //获取数据库连接信息
- database := v.Sub("database")
- err = database.Unmarshal(&DbInfo)
- if err != nil {
- fmt.Println(err)
- return
- }
- //获取基本设置
- setting := v.Sub("setting")
- err = setting.Unmarshal(&SInfo)
- if err != nil {
- fmt.Println(err)
- return
- }
- //获取sql
- SqlMaps = v.GetStringMap("sql")
- }
- func PrintSqlMap() {
- for k := range SqlMaps {
- fmt.Printf("%s ----> %s\n", k, SqlMaps[k])
- }
- }
|