beego_mysql,redis,mongo连接(20170307)

来源:互联网 发布:微信开放平台 php源码 编辑:程序博客网 时间:2024/06/01 07:26

上次粗略讲了下beego的学习途径和go的环境配置,现在讲一下基础的数据库配置,redis配置和mongo配置。

先整理一下beego的结构框架:

1.conf 配置目录,server.ini(配置文件)

2.main.go  入口主文件

3.models  数据库操作目录

4.controler 控制层目录

5.static  前端静态目录   存放前端合作组的css,js,img等文件

6.views  前端静态页面目录 html 存放静态模板文件

7. 以上都是基本的目录结构,其实没基本的配备目录还应该有routers(这个可以根据功能模板拆分成各个功能路由,比如 member_router.go(用户功能模块路由),market_router.go(市场模块路由)),整体打包成router包,由main.go引入包 

8.其他的我们自己抽象出来的目录结构: gutils目录(常用功能方法,依然可分目录,目前有conf(系统配置包),gredis(redis操作包)),logs目录(日志包),initial(连接初始化包),这个看个人设定,可因项目而异,我简单介绍这两个。

现在我们讲一下我们今天的主题。redis和mongo,mysql的配置。以下有些函数是调用第三包的函数,记得去git上面下载第三方包。包名在导入的时候已经给出了

上述到里面有个conf目录,目录可添加文件server.ini文件设置参数 ,结构为"MongoPass=test123456"(mongo数据库的密码参数和值),mysql和redis相关类似,这里只谈到如何配置参数。现在我来讲一下如何利用这些参数,我们项目在gutils目录再独立一个conf目录,定义个一个 SvrConfig  *config.Config类型的指针变量,利用init()函数初始化配置,引入conf目录的文件path = utils.ExtractFileDir(utils.GetApplicationFullName()) + "\\conf\\server.ini",获取参数值赋值给SvrConfig这个指针变量。

initial包里面建立initsql函数,引入import ("gutils/conf "_ "github.com/go-sql-driver/mysql"  "github.com/astaxie/beego/orm" "github.com/astaxie/beego") ,获取参数配置,进行数据库链接初始化,orm.RegisterDriver("mysql", orm.DRMySQL),orm.RegisterDataBase("default", "mysql",........),这里就完成了数据库的链接了。

redis和mongo类似mysql这种操作,不过接连的操作方式不一样而已,还是引入的包不一样而已。

redis import ("gutils/conf " "github.com/garyburd/redigo/redis" "github.com/astaxie/beego") 

mongoimport ("gutils/conf " mgo "gopkg.in/mgo.v2" "github.com/astaxie/beego") 


下期我要记录的就是mysql orm操作和redis,mongo的操作。

  

0 0
原创粉丝点击