config.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package config
  2. import "fmt"
  3. type ApiConfig struct {
  4. RunMode string
  5. HttpPort int64
  6. LogMode string
  7. AppName string
  8. DataSource string
  9. }
  10. var AppConfig ApiConfig
  11. var _config *Config =nil
  12. func init() {
  13. ParseConfig()
  14. }
  15. func ParseConfig() {
  16. _config, err := LoadConfiguration("conf/app.conf")
  17. if err != nil{
  18. fmt.Println(err.Error())
  19. AppConfig.AppName = ""
  20. AppConfig.HttpPort = 8080
  21. AppConfig.LogMode = "debug"
  22. AppConfig.RunMode = "debug"
  23. AppConfig.DataSource = ""
  24. }else{
  25. AppConfig.AppName = _config.String("appname","")
  26. AppConfig.HttpPort = _config.Integer("httpport", 8080)
  27. AppConfig.LogMode = _config.String("logmode", "debug")
  28. AppConfig.RunMode = _config.String("runmode", "debug")
  29. AppConfig.DataSource = _config.String("datasource", "")
  30. }
  31. }
  32. func (c *ApiConfig)GetKey(key string) string{
  33. if _config == nil{
  34. ParseConfig()
  35. }
  36. return _config.String(key,"")
  37. }
  38. func (c *ApiConfig)GetInt(key string) int64 {
  39. if _config == nil{
  40. ParseConfig()
  41. }
  42. return _config.Integer(key, 0)
  43. }
  44. func (c *ApiConfig)GetBool(key string, def bool) bool {
  45. if _config == nil{
  46. ParseConfig()
  47. }
  48. return _config.Boolean(key, def)
  49. }