golang- 实现多环境配置

需要安装插件

go get gopkg.in/yaml.v3

配置yaml 文件

 

 然后配置数据块与yaml结构相同,用来接收数据,字段需要配置映射关系,如下

完整的执行代码如下

复制代码
// 初始化yaml文件
func doYaml() {
    envName := ParamsObj.Env
    if StringUtil.IsEmpty(envName) {
        envName = "dev"
        ParamsObj.Env = envName
    }
    //配置文件
    configFile, err := os.ReadFile(resources + envName + ".yaml")
    if err != nil {
        //打印报错后停止程序
        log.Fatal("读取配置文件错误!", err)
    }
    //读取
    err = yaml.Unmarshal(configFile, &Config)
    if err != nil {
        //打印报错后停止程序
        log.Fatal("读取配置内容错误!", err)
    }

    kk, _ := jsonUtil.ToJson(Config)
    println("解析出的配置参数:")
    println(kk)
}
复制代码

 

err = yaml.Unmarshal(configFile, &Config) 里面的 Config这个值,需要定义好,作为全局变量

 

 

 

posted @   岑惜  阅读(91)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2020-05-14 spring cloud --- Feign --- 心得
2020-05-14 spring cloud --- Ribbon 客户端负载均衡 + RestTemplate + Hystrix 熔断器 [服务保护] ---心得
2020-05-14 spring boot --- 使用 注解 读取 properties 文件 信息
点击右上角即可分享
微信分享提示