golang yaml配置
- Redis配置文件结构体
package config
type Redis struct {
Host string `yaml:"host"`
Password string `yaml:"password"`
Port int `yaml:"port"`
DB int `yaml:"db"`
}
- 日志配置文件结构体
package config
type Logger struct {
LogPath string `yaml:"logPath"`
Debug bool `yaml:"debug"`
}
- 将配置文件的各个结构体汇总
package config
type Config struct {
Redis Redis `yaml:"redis"`
Logger Logger `yaml:"logger"`
}
- 定义一个全局的结构体变量,在整个项目中使用
package global
import "test/config"
var (
Cfg config.Config
)
- 读取配置yaml配置文件,将内容映射到全局变量中
package initialization
import (
"test/global"
"gopkg.in/yaml.v2"
"log"
"os"
)
func initConfig() {
configFile, err := os.ReadFile("config.yaml")
if err != nil {
log.Fatal("读取配置文件错误!", err)
}
if err = yaml.Unmarshal(configFile, &global.Cfg); err != nil {
log.Fatal("加载配置文件错误!", err)
}
}
- 配置文件写法
redis:
host: "127.0.0.1"
port: 6379
password: ""
db: 0
logger:
logPath: "./log/test.log"
debug: true
golang yaml配置的更多相关文章
- CentOS6.5上golang环境配置
CentOS6.5上golang环境配置 一.下载和解压go环境包 >>cd /usr/local/src/ >>wget -c http://golangtc.com/sta ...
- linux下golang的配置
linux下golang的配置 之前开发golang一直在windows下,今天在linux下试了一下 ,遇到一些梗,比如go 找不到 sync包.花了一小时全部解决,把过程记录一下. 安装 go 我 ...
- IntelliJ IDEA开发golang环境配置
IntelliJ IDEA开发golang环境配置 首先把GO安装好...(自行安装,附上一篇我之前写的MAC安装GO) 安装IntelliJ IDEA,下载地址: https://www.jetbr ...
- Spring Boot2 系列教程(五)Spring Boot中的 yaml 配置
搞 Spring Boot 的小伙伴都知道,Spring Boot 中的配置文件有两种格式,properties 或者 yaml,一般情况下,两者可以随意使用,选择自己顺手的就行了,那么这两者完全一样 ...
- Spring Boot(2)中的yaml配置简介
搞Spring Boot的小伙伴都知道,Spring Boot中的配置文件有两种格式,properties或者yaml,一般情况下,两者可以随意使用,选择自己顺手的就行了,那么这两者完全一样吗?肯定不 ...
- mongodb 3.2 yaml 配置详解及范例
mongodb3.x版本后就是要yaml语法格式的配置文件,下面是yaml配置文件格式如下:官方yaml配置文件选项参考:https://docs.mongodb.org/manual/ ... #c ...
- SpringBoot配置文件 application.properties,yaml配置
SpringBoot配置文件 application.properties,yaml配置 1.Spring Boot 的配置文件 application.properties 1.1 位置问题 1.2 ...
- springboot----四、yaml配置注入
四.yaml配置注入 4.1.配置文件 SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的 application.properties 语法结构 :key=value applic ...
- SpringBoot中yaml配置对象
转载请在页首注明作者与出处 一:前言 YAML可以代替传统的xx.properties文件,但是它支持声明map,数组,list,字符串,boolean值,数值,NULL,日期,基本满足开发过程中的所 ...
- ubuntu下golang环境配置
安装go 可以到Golang中国下载go的安装包 解压安装包tar -C /usr/local -xzf <安装包> 添加环境变量`export PATH=$PATH:/usr/local ...
随机推荐
- 安卓开发 java控制UI
创建布局管理器对象 设置背景 设置活动界面 按钮事件 按钮显示
- 内网安全之:MS14-068 Kerberos 域用户提权漏洞
内网安全之:MS14-068 Kerberos 域用户提权漏洞 目录 内网安全之:MS14-068 Kerberos 域用户提权漏洞 0 漏洞说明 (MS14-068:CVE-2014-6324) 1 ...
- Vulhub 漏洞学习之:Docker
Vulhub 漏洞学习之:Docker 目录 Vulhub 漏洞学习之:Docker 1 docker daemon api 未授权访问漏洞 1.1 漏洞利用过程 1 docker daemon ap ...
- 极速编程体验:VsCode和webstorm插上ChatGPT
ChatGPT走入了千家万户,而她最适合的用法之一就是进行编程辅助,特别是对一些常规开发,有比较好的引导作用. 很多主流编辑器都有相关的插件支持接入ChatGPT,而VsCode和webstorm是我 ...
- .NET AsyncLocal 避坑指南
目录 AsyncLocal 用法简介 AsyncLocal 实现原理 AsyncLocal 的坑 AsyncLocal 的避坑指南 HttpContextAccessor 的实现原理 AsyncLoc ...
- 大道至简的架构设计思想之:封装(C系架构设计法,sishuok)
一起来看看大道至简的一些基本设计思想,首先我们来看一下什么是封装. 封装:也叫做信息隐藏,或者数据访问保护.放到程序上来讲,就是隐藏类的属性,还有实现细节,仅对外公开一些接口.那么外部,就只能通过这个 ...
- python 在一个文件夹的所有文件中查找关键字
python 在一个文件夹的所有文件中查找关键字 import os,shutil import re key='Hello' re_parttern=re.compile(r''+key,re.DO ...
- 开源持续测试平台--MerterSphere
一.MeterSphere平台介绍 MeterSphere是一站式的开源持续测试平台,遵循 GPL v3 开源许可协议,涵盖测试跟踪.接口测试.UI测试和性能测试等功能,全面兼容JMeter.Sele ...
- vue - video视频播放完后重置播放,离开页面暂停所有视频,轮播切换后暂停播放所有视频
描述:基于vue-awesome-swiper的多视频处理 slideChangeTransitionEnd:轮播切换时暂停播放 父组件 <swiper ref="mySwiper&q ...
- 微信小程序与微信公众号之间支付问题解决方案
前言 大家好,我是一名对编程有兴趣的小伙子,IT届称我为xiager,工作中叫我jake 就好了,如果此文对你有帮助希望多多关注哦. 准备 微信公众平台 微信支付平台 微信开放平台 一. 小程序 ...