写一段go语言链接mongodb代码
时间: 2023-10-18 09:07:22 浏览: 84
好的,请给我一些时间准备一下。
以下是Go语言链接MongoDB的示例代码:
```
package main
import (
"context"
"fmt"
"log"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
type Person struct {
Name string
Age int
City string
}
func main() {
// 设置客户端连接配置
clientOptions := options.Client().ApplyURI("mongodb://localhost:27017")
// 连接到MongoDB
client, err := mongo.Connect(context.Background(), clientOptions)
if err != nil {
log.Fatal(err)
}
// 检查连接
err = client.Ping(context.Background(), nil)
if err != nil {
log.Fatal(err)
}
fmt.Println("Connected to MongoDB!")
// 获取数据库和集合对象
peopleCollection := client.Database("test").Collection("people")
// 插入一条文档
person := Person{"Tim", 25, "New York"}
res, err := peopleCollection.InsertOne(context.Background(), person)
if err != nil {
log.Fatal(err)
}
fmt.Printf("Inserted document: %+v\n", res.InsertedID)
// 查询文档
var result Person
filter := bson.M{"name": "Tim"} // 筛选条件
err = peopleCollection.FindOne(context.Background(), filter).Decode(&result)
if err != nil {
log.Fatal(err)
}
fmt.Printf("Found document: %+v\n", result)
}
```
以上示例代码展示了如何使用Go语言连接MongoDB,并进行插入与查询操作。当然,在实际开发中还需要注意错误处理、断开连接等问题。
阅读全文