读取json文件
{
"go-micro":{
"db": {
"ip": "10.0.0.1",
"port": 3306
},
"redis": {
"ip": "10.0.0.1",
"port": 6379
}
}
}
package main
import (
"fmt"
"github.com/micro/go-micro/v2/config"
"log"
)
type DB struct {
Ip string
Port int
}
type Result struct {
Db struct{
Ip string `json:"ip"`
Port int `json:"port"`
} `json:"db"`
Redis struct{
Ip string `json:"ip"`
Port int `json:"port"`
} `json:"redis"`
}
func main() {
configFile := "application"
if err := config.LoadFile(configFile);err != nil{
log.Fatal(err)
}
// 方式一
db := &DB{}
if e := config.Get("go-micro", "db").Scan(db);e != nil{
log.Fatal(e)
}
fmt.Println(db)
// 方式二
res := &Result{}
if e := config.Get("go-micro").Scan(res);e != nil{
log.Fatal(e)
}
fmt.Println(res)
}
读取yaml文件
go-micro:
db:
ip: 10.0.0.1
port: 3306
redis:
ip: 10.0.0.1
port: 6379
与读取json文件类似