config.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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. var err error
  17. _config, err = LoadConfiguration("conf/app.conf")
  18. if err != nil{
  19. fmt.Println(err.Error())
  20. AppConfig.AppName = ""
  21. AppConfig.HttpPort = 8080
  22. AppConfig.LogMode = "debug"
  23. AppConfig.RunMode = "debug"
  24. AppConfig.DataSource = ""
  25. }else{
  26. AppConfig.AppName = _config.String("appname","")
  27. AppConfig.HttpPort = _config.Integer("httpport", 8080)
  28. AppConfig.LogMode = _config.String("logmode", "debug")
  29. AppConfig.RunMode = _config.String("runmode", "debug")
  30. AppConfig.DataSource = _config.String("datasource", "")
  31. }
  32. }
  33. func (c *ApiConfig)GetKey(key string) string{
  34. if _config == nil{
  35. ParseConfig()
  36. }
  37. return _config.String(key,"")
  38. }
  39. func (c *ApiConfig)GetInt(key string) int64 {
  40. if _config == nil{
  41. ParseConfig()
  42. }
  43. return _config.Integer(key, 0)
  44. }
  45. func (c *ApiConfig)GetBool(key string, def bool) bool {
  46. if _config == nil{
  47. ParseConfig()
  48. }
  49. return _config.Boolean(key, def)
  50. }