✨ 完成nacos和数据库等配置文件
This commit is contained in:
9
config/app.go
Normal file
9
config/app.go
Normal file
@@ -0,0 +1,9 @@
|
||||
package config
|
||||
|
||||
type appInfo struct {
|
||||
AppName string `mapstructure:"name" yaml:"name"` // 应用名称
|
||||
Port uint64 `mapstructure:"port" yaml:"port"` // 端口号
|
||||
Prefix string `mapstructure:"prefix" yaml:"prefix"` // 接口前缀
|
||||
Version string `mapstructure:"version" yaml:"version"` // 版本号
|
||||
Monster bool `mapstructure:"monster" yaml:"monster"` // 妖怪模式
|
||||
}
|
12
config/config.go
Normal file
12
config/config.go
Normal file
@@ -0,0 +1,12 @@
|
||||
package config
|
||||
|
||||
var Scd systemConfigData
|
||||
var Nacos nacosConfig
|
||||
|
||||
// 配置信息
|
||||
type systemConfigData struct {
|
||||
Admin appInfo `mapstructure:"admin" yaml:"admin"` // 系统配置-Admin
|
||||
Api appInfo `mapstructure:"api" yaml:"api"` // 系统配置-Api
|
||||
MySQL mysqlConfig `mapstructure:"mysql" yaml:"mysql"` // MySQL配置
|
||||
Redis redisConfig `mapstructure:"redis" yaml:"redis"` // Redis配置
|
||||
}
|
20
config/mysql.go
Normal file
20
config/mysql.go
Normal file
@@ -0,0 +1,20 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
// MySQL配置
|
||||
type mysqlConfig struct {
|
||||
Host string `mapstructure:"host" yaml:"host"` // 主机
|
||||
Port int `mapstructure:"port" yaml:"port"` // 端口
|
||||
User string `mapstructure:"user" yaml:"user"` // 用户名
|
||||
Password string `mapstructure:"password" yaml:"password"` // 密码
|
||||
Db string `mapstructure:"db" yaml:"db"` // 数据库名称
|
||||
}
|
||||
|
||||
// GetDSN 返回 MySQL 连接字符串
|
||||
func (c mysqlConfig) GetDSN() string {
|
||||
return fmt.Sprintf("%s:%s@tcp(%s:%v)/%s?charset=utf8mb4&parseTime=True&loc=Local",
|
||||
c.User, c.Password, c.Host, c.Port, c.Db)
|
||||
}
|
9
config/nacos.go
Normal file
9
config/nacos.go
Normal file
@@ -0,0 +1,9 @@
|
||||
package config
|
||||
|
||||
// nacosConfig Nacos配置
|
||||
type nacosConfig struct {
|
||||
Host string `env:"NACOS_HOST"` // 主机
|
||||
Port uint64 `env:"NACOS_PORT" envDefault:"8848"` // 端口
|
||||
NamespaceId string `env:"NACOS_NAMESPACE"` // 命名空间
|
||||
CenterConfigName string `env:"NACOS_CONFIG_NAME" envDefault:"gtest.yml"` // 外部配置文件名,多个以逗号隔开
|
||||
}
|
15
config/redis.go
Normal file
15
config/redis.go
Normal file
@@ -0,0 +1,15 @@
|
||||
package config
|
||||
|
||||
import "fmt"
|
||||
|
||||
// Redis配置
|
||||
type redisConfig struct {
|
||||
Host string `mapstructure:"host" yaml:"host"` // 主机
|
||||
Port int `mapstructure:"port" yaml:"port"` // 端口
|
||||
Password string `mapstructure:"password" yaml:"password"` // 密码
|
||||
Db int `mapstructure:"db" yaml:"db"` // 数据库名称
|
||||
}
|
||||
|
||||
func (r redisConfig) GetDSN() string {
|
||||
return fmt.Sprintf("%s:%v", r.Host, r.Port)
|
||||
}
|
Reference in New Issue
Block a user