beego 定义一个存储变量的容器

golang 这种语言相对于 php 有个好处是,不用每次请求都重复一些不必要的初始化操作,golang 进程开启之后,即使请求结束,相关的资源也会驻留在内存中。

所以我们可以把一些不需要重复初始化的东西放到这里面,比如:mongo 的连接

package utils

import (
	"errors"
)

var container = make(map[string]interface{})

func Set(name string, value interface{}) {
	container[name] = value
}

func Get(name string) (interface{}, error) {
	if v, ok := container[name]; ok {
		return v, nil
	} else {
		return nil, errors.New("key not exist")
	}
}

  

原文地址:https://www.cnblogs.com/eleven24/p/9030169.html