Golang toml配置文件加载方法
一、toml 配置文件加载方法
Golang可以通过加载toml文件的方式,减少代码移植或环境变更时对代码的修改量。
有这样一份toml文件:
我们需要定义一个结构体类型(Config)来映射配置文件,要注意成员名一定要和配置文件中字段名一致。
结果:
上述代码是加载toml文件最简单粗暴的方式。
二、toml配置文件路径处理
当你的工程被要求制作成一个可安装的工具时,加载toml位置时 path := “./conf/projectconfig.toml” 就会有问题,因为这是你工程的路径。
如下提供了一个可以参考的解决办法:
当找不到默认路径(工程目录下的配置文件路径),就返回安装目录下的路径(line:43)
当然你也可以在运行程序时指定toml文件的路径。
使用 flag.Parse() 解析命令行参数。
flag.String(“path”, “”, “toml file path”)有三个参数
- 第一个参数path,是输入命令行参数时的字段名 比如上图的 -path=XXX
- 第二个参数是没有输入命令行参数时的默认值
- 第三个参数是提示信息 go run main.go -help 会打印出来
Golang toml配置文件加载方法相关推荐
- 33-viper 配置文件加载
配置文件加载: 主流的配置文件格式:toml.yaml.json.xml.ini(conf.properties) 配置的来源:文本文件.环境变量.配置中心(携程开源的apollo配置中心.nacos ...
- Spring使用环境变量控制配置文件加载(转)
项目中需要用到很多配置文件,不同环境的配置文件是不一样的,因此如果只用一个配置文件,势必会造成配置文件混乱,这里提供一种利用环境变量控制配置文件加载的方法,如下: 一.配置环境变量 如果是window ...
- 配置文件加载位置||外部配置加载顺序||自动配置原理
配置文件加载位置 SpringBoot会从这四个位置全部加载主配置文件:互补配置: 外部配置加载顺序 自动配置原理 1.自动配置原理: 1).SpringBoot启动的时候加载主配置类,开启了自动配置 ...
- Spring 配置文件加载原理
参考:准备Spring Boot的环境 1 核心原理 ⭐️1 在SpringBoot的环境准备阶段的后期, 发布一个ApplicationEnvironmentPreparedEvent事件 ⭐️2 ...
- Mybatis 源码分析(一)配置文件加载流程
Mybatis 源码分析(一)配置文件加载流程 1.项目构建 引入依赖 <dependency><groupId>org.mybatis</groupId>< ...
- LINUX配置文件加载顺序
LINUX配置文件加载顺序 shell启动方式 启动类型 如何判断是否为交互式 Shell? 有两种方式 判断是否为登录式 Shell ? 同时判断交互式和登录式 配置文件启动 配置文件加载说明 启动 ...
- 架设KMS服务器流程启动加载方法
架设KMS服务器流程 启动加载方法 架设KMS服务器流程--启动加载方法 以下操作 root 一.准备Centos服务器CentOS-8.4.2105 1.下载http://mirrors.163.c ...
- springBoot配置文件加载原理探究
尽管用springBoot做开发已经有很长一段时间了,在开发时一般都是直接将application.properties或application.yml,放在开发环境的resources下的,运行起来 ...
- matlab 读取voi文件,VOI虚拟化下的Windows网卡驱动加载方法与流程
本发明涉及计算机技术领域,特别涉及VOI虚拟化下的Windows网卡驱动加载方法. 背景技术: 在VOI虚拟化方案中,首先需要确保网卡驱动能够提前加载到系统中,才能够实现通过网络来引导操作系统启动.现 ...
最新文章
- [WC2013]平面图——平面图点定位
- [Java Plasterer] Java Components 3:Java Enum
- 安装 CORD 之前需要了解的术语
- mysql 严格模式查看,如何查找和禁用MySQL严格模式?
- appium+python+iOS 环境搭建与使用中常见问题的解决方案链接
- 代码也能“杀”虫:此虫,真虫非Bug也
- java设置日历_java – 设置日历实例的时间
- oracle数字类型是什么格式,oracle字段类型NUMBER(38,3),括号中两个数字分别表示什么?...
- (Windows)获取系统显示的缩放比例方法
- xlsx文件打开乱码_excel打不开xlsx文件怎么办 excel打开xlsx文件乱码怎么解决
- pdf复制json不全的问题
- [附源码]Java计算机毕业设计SSM高等数学在线学习平台
- 人生有三重境界:看山是山,看水是水;看山不是山,看水不是水;看山还是山,看水还是水=
- 容易的面试问题变得更加困难:给定数字1..100,在正好缺少k的情况下,找到缺失的数字
- boto3使用教程用法
- Chrome下图片加载的问题
- Uconn DataMining Math5671 课程小记(1)
- java毕业设计水果网店管理系统(附源码、数据库)
- Linux菜鸟到老鸟的那些建议
- 最新2022财报,亚信科技稳步转型
热门文章
- 自定义bpmn.js左侧工具栏palette样式
- 二叉树练习题(一) 二叉树的遍历
- 快站模板 连接mysql_建站实操:如何用CMS快速建站
- 如何迎新年?手工自制2021年精美简朴行事历
- CAD二次开发命令窗口交互(COM接口c#语言)
- 报错`RuntimeError: CUDA out of memory. Tried to allocate 256.00 MiB (GPU 0; 9.78 GiB total capaci
- 易恢复EasyRecovery15电脑数据恢复软件
- 【ZOJ】3829 Known Notation_天涯浪子_新浪博客
- 支持向量机之松弛变量与惩罚因子 (四)
- 基于pyQt5的pdf阅读器