golang 讀取配置檔案vipper

2021-08-29 07:29:36 字數 1468 閱讀 2282

讀取配置檔案的,有toml和vipper兩種好用的方法,toml的方法見:

最大的特點就是要為配置檔案構建相對應的結構體,有點囧,現在講乙個vipper。

// init 初始化配置

func

init()

v := viper.

new(

) v.

setconfigtype

("yaml"

) v.

setconfigname

(env)

v.addconfigpath

("../config/"

) v.

addconfigpath

("config/"

)readconfig

(v) v.

watchconfig()

v.onconfigchange

(func

(e fsnotify.event)

) config = v

}// getconfig 獲取配置

func

getconfig()

*viper.viper

func

readconfig

(v *viper.viper)

error

return

nil}config_test.go

package config

import

("testing"

)func

testgetconfig

(t *testing.t)

在二者的同級目錄下:

dev.yaml

addr::

8090

debugport::

8091db:

host

: localhost

port

:5432

執行config_test 檔案:

==

= run testgetconfig

:8090

localhost

config file changed: g:\go_workspace\gopath\src\cdd-platform-srv\config\dev.yaml

golang讀取配置檔案

在專案中往往將一些配置資訊放到配置檔案中,這樣在不同的執行環境中,只需修改配置檔案即可。以下介紹兩種通過第三方包獲取配置檔案的方式 一 通過gopkg.in ini.v1 go get gopkg.in ini.v11.配置檔案 test.conf mqtt mqtt hostname 127.0....

Golang讀取配置檔案 ini 資訊

package main import fmt io ioutil regexp strings func checkerr e error 函式名 getcfg tag string,cfg string string 參 數 tag string 引數的名稱 cfg string 配置資訊字串 ...

Golang庫 viper讀取配置檔案

viper是由steve francia編寫的開源配置解決方案,也是cobra的作者,我們來看下viper的功能 go get github.com spf13 vipergithub位址 在讀取配置檔案中我們將會演示viper的集中使用方式 我們以.yml檔案為例 這裡的配置檔案讀取可以使用相對路...