假设已经安装了mongodb服务器并运行了mongodb服务端(或有可以连接的mongodb服务端),这里不赘述mongodb的安装过程。
go语言下使用mongodb步骤如下:
下载mongodb连接驱动mgo
go语言没有专门开发连接mongodb的库,不过第三方开发的库mgo可以连接mongodb,也得到了官方认可。
命令行下输入:go get gopkg.in/mgo.v2
下载的mongodb go语言驱动包会直接存储在GOPATH目录下。
引入mgo包
用下面的方式可以在go代码文件中引入mgo包,为连接mongodb做准备
import (
"gopkg.in/mgo.v2"
"gopkg.in/mgo.v2/bson"
)
完整代码
新建一个文件夹,编写一个go代码文件如下(下面假设连接的mongodb服务器运行的地址为10.0.2.2)
package main
import (
"gopkg.in/mgo.v2"
"gopkg.in/mgo.v2/bson"
"fmt"
)
//定义student结构,变量大写
type student struct {
Name string
Age int
}
func main() {
//连接本地mongodb服务
url := "mongodb://10.0.2.2"
session, err := mgo.Dial(url)
if err != nil {
panic(err)
}
defer session.Close()
//打开默认数据库test
session.SetMode(mgo.Monotonic, true)
c := session.DB("test").C("student")
//插入student
c.Insert(&student{"Alice", 18},
&student{"Bob", 19})
//查找,查找条件"name"小写
stu := student{}
err = c.Find(bson.M{"name": "Alice"}).One(&stu)
//输出
fmt.Println(stu)
//查找全部
students := make([]student, 30)
err = c.Find(nil).All(&students)
//输出
fmt.Println(students)
}
输出:
说明操作成功。