AdapterContent

AdapterContent是基于配置内容的实现,用户可以给定具体的配置内容,生成Adapter接口对象。配置内容支持多种格式,格式列表同配置管理组件。

使用示例

大部分场景下,我们可以通过框架已经封装好的g.Cfg单例对象来便捷使用基于文件的配置管理实现。例如:

  1. package main
  2. import (
  3. "fmt"
  4. "github.com/gogf/gf/v2/os/gcfg"
  5. "github.com/gogf/gf/v2/os/gctx"
  6. )
  7. const content = `
  8. server:
  9. address: ":8888"
  10. openapiPath: "/api.json"
  11. swaggerPath: "/swagger"
  12. dumpRouterMap: false
  13. database:
  14. default:
  15. link: "mysql:root:12345678@tcp(127.0.0.1:3306)/test"
  16. debug: true
  17. `
  18. func main() {
  19. var ctx = gctx.New()
  20. adapter, err := gcfg.NewAdapterContent(content)
  21. if err != nil {
  22. panic(err)
  23. }
  24. config := gcfg.NewWithAdapter(adapter)
  25. fmt.Println(config.MustGet(ctx, "server.address").String())
  26. fmt.Println(config.MustGet(ctx, "database.default").Map())
  27. }

运行后,终端输出:

  1. :8888
  2. map[debug:true link:mysql:root:12345678@tcp(127.0.0.1:3306)/test]