0
点赞
收藏
分享

微信扫一扫

MySQL:日志系统

哈哈我是你爹呀 2023-11-12 阅读 34

步骤:

(1)连接

连接字符串

(2)CRUD

类与接口

解析

(3)maven管理方法

依赖

<dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver-legacy</artifactId>
            <version>4.10.2</version>
        </dependency>

示例

package org.example;

import com.mongodb.client.*;
import org.bson.Document;

import java.util.Arrays;

/**
 * @author gzb Email:a@wk2.cn
 * @since 2023/11/06 14:27
 */
public class t1 {
    public static void main(String[] args) {
        MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
        MongoDatabase mongoDatabase = mongoClient.getDatabase("myDB");
        MongoCollection<Document> collection = mongoDatabase.getCollection("video");
        System.out.println("before operation");
        insertExample(collection);
        System.out.println("after operation");
        FindIterable<Document> documents = collection.find();
        for (Document document: documents){
            System.out.println(document.toJson());
        }
        mongoClient.close(); // 记得关闭客户端连接
    }

    private static void insertExample(MongoCollection<Document> collection) {
        collection.insertMany(Arrays.asList(
                new Document("title", "MongoDB installation")
                        .append("author", "Mike")
                        .append("tags", Arrays.asList("MongoDB", "database"))
                        .append("views", 1221)
                        .append("evaluation", new Document("like", 22).append("forward", 10)),
                new Document("title", "Java programming  ")
                        .append("author", "Mike")
                        .append("tags", Arrays.asList("Java", "course"))
                        .append("views", 3411)
                        .append("evaluation", new Document("like", 112).append("forward", 32)),
                new Document("title", "Music recommend")
                        .append("author", "Joe")
                        .append("tags", Arrays.asList("music", "pop"))
                        .append("views", 38)
                        .append("evaluation", new Document("like", 2))

        ));
    }

}

操作

插入

   private static void insertExample(MongoCollection<Document> collection) {
        collection.insertMany(Arrays.asList(
                new Document("title", "MongoDB installation")
                        .append("author", "Mike")
                        .append("tags", Arrays.asList("MongoDB", "database"))
                        .append("views", 1221)
                        .append("evaluation", new Document("like", 22).append("forward", 10)),
                new Document("title", "Java programming  ")
                        .append("author", "Mike")
                        .append("tags", Arrays.asList("Java", "course"))
                        .append("views", 3411)
                        .append("evaluation", new Document("like", 112).append("forward", 32)),
                new Document("title", "Music recommend")
                        .append("author", "Joe")
                        .append("tags", Arrays.asList("music", "pop"))
                        .append("views", 38)
                        .append("evaluation", new Document("like", 2))

        ));
    }

删除

private static void delete(MongoCollection<Document> collection){
        collection.deleteMany(Filters.eq("author", "Joe"));
    }

更新

 private static void update(MongoCollection<Document> collection) {
        collection.updateOne(
                new Document("title", "MongoDB installation").append("author", "Mike"),
                Updates.inc("views", 1));
    }

还有set,pop,push等操作 

替换

private static void replace(MongoCollection<Document> collection) {
        collection.replaceOne(
                Filters.eq("author", "tom"), 
                new Document("author", "jacky").append("count",2)
        );
    }

查找

private static void select(MongoCollection<Document> collection) {
        Bson filter = Filters.gt("evaluation.like", 10);
        FindIterable<Document> documents = collection.find(filter);
        for (Document document : documents) {
            System.out.println(document.toJson());
        }
    }

分组

 MongoCursor<Document> mongoCursor = collection.aggregate(
                Arrays.asList(
                        Aggregates.match(Filters.empty()),
                        Aggregates.group("$author", Accumulators.sum("count", 1))
                )).cursor();
举报

相关推荐

0 条评论