golang操作mongodb的方法

 更新时间:2015年02月24日 12:16:56   作者:不吃皮蛋  
这篇文章主要介绍了golang操作mongodb的方法,涉及Go语言操作mongodb的连接、读取及显示的方法,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了golang操作mongodb的方法。分享给大家供大家参考。具体实现方法如下:

复制代码 代码如下:
package main
import (
    "fmt"
    "launchpad.net/mgo"
    "launchpad.net/mgo/bson"
)
type Mail struct {
    Id bson.ObjectId "_id"
    Name string
    Email string
}
func main() {
    // 连接数据库
    session, err := mgo.Dial("127.0.0.1")
    if err != nil {
        panic(err)
    }
    defer session.Close()
    // 获取数据库,获取集合
    c := session.DB("test").C("mail")
    // 存储数据
    m1 := Mail{bson.NewObjectId(), "user1", "user1@dotcoo.com"}
    m2 := Mail{bson.NewObjectId(), "user1", "user2@dotcoo.com"}
    m3 := Mail{bson.NewObjectId(), "user3", "user3@dotcoo.com"}
    m4 := Mail{bson.NewObjectId(), "user3", "user4@dotcoo.com"}
    err = c.Insert(&m1, &m2, &m3, &m4)
    if err != nil {
        panic(err)
    }
    // 读取数据
    ms := []Mail{}
    err = c.Find(&bson.M{"name":"user3"}).All(&ms)
    if err != nil {
        panic(err)
    }
    // 显示数据
    for i, m := range ms {
        fmt.Printf("%s, %d, %s\n", m.Id.Hex(), i, m.Email)
    }
}

希望本文所述对大家的Go语言程序设计有所帮助。

相关文章

  • 详解Go多协程并发环境下的错误处理

    详解Go多协程并发环境下的错误处理

    这篇文章主要介绍了详解Go多协程并发环境下的错误处理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • 解决Golang json序列化字符串时多了\的情况

    解决Golang json序列化字符串时多了\的情况

    这篇文章主要介绍了解决Golang json序列化字符串时多了\的情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 基于Go和Gin的环境配置方法

    基于Go和Gin的环境配置方法

    今天小编就为大家分享一篇基于Go和Gin的环境配置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • 浅谈Go Channel 高级实践

    浅谈Go Channel 高级实践

    这篇文章主要介绍了浅谈Go Channel 高级实践,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • GoLang 逃逸分析的机制详解

    GoLang 逃逸分析的机制详解

    这篇文章主要介绍了GoLang-逃逸分析的机制详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Go语言实现的一个简单Web服务器

    Go语言实现的一个简单Web服务器

    这篇文章主要介绍了Go语言实现的一个简单Web服务器,本文先是给出一个使用http包建立的Web服务器源码,并对比了其它编程语言,需要的朋友可以参考下
    2014-10-10
  • Golang的select多路复用及channel使用操作

    Golang的select多路复用及channel使用操作

    这篇文章主要介绍了Golang的select多路复用及channel使用操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • IdeaGo启动报错Failed to create JVM的问题解析

    IdeaGo启动报错Failed to create JVM的问题解析

    这篇文章主要介绍了IdeaGo启动报错Failed to create JVM的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • GO接收GET/POST参数及发送GET/POST请求的实例详解

    GO接收GET/POST参数及发送GET/POST请求的实例详解

    这篇文章主要介绍了GO接收GET/POST参数及发送GET/POST请求,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Golang Gob编码(gob包的使用详解)

    Golang Gob编码(gob包的使用详解)

    这篇文章主要介绍了Golang Gob编码(gob包的使用详解),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05

最新评论