初学mongoDB

MongoDB 是一个开源的 NoSQL 数据库,由 C++ 语言编写。它与传统的关系型数据库不同,MongoDB 使用的是一种基于文档的存储模型,不需要定义固定的表结构,可以灵活地存储和管理大量的非结构化数据。下面是 MongoDB 的一些核心特性:

一个简单JAVA例子:

要在 Java 中对 MongoDB 进行增删改查操作,可以使用 MongoDB 官方的 Java 驱动。首先,确保在项目中引入 MongoDB 的 Java 驱动依赖。例如,如果你使用的是 Maven,可以在 pom.xml 中添加以下依赖:

xml 复制代码
<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>mongodb-driver-sync</artifactId>
    <version>4.9.0</version>
</dependency>

java代码:

java 复制代码
import com.mongodb.MongoClientSettings;
import com.mongodb.client.*;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
import org.bson.Document;
import org.bson.conversions.Bson;

import java.util.Arrays;

public class MongoDBExample {
    public static void main(String[] args) {
        // 创建 MongoDB 客户端
        MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");

        // 选择数据库
        MongoDatabase database = mongoClient.getDatabase("testDB");

        // 选择集合
        MongoCollection<Document> collection = database.getCollection("testCollection");

        // 插入文档
        insertDocument(collection);

        // 查询文档
        findDocument(collection);

        // 更新文档
        updateDocument(collection);

        // 删除文档
        deleteDocument(collection);

        // 关闭 MongoDB 客户端
        mongoClient.close();
    }

    // 插入文档示例
    public static void insertDocument(MongoCollection<Document> collection) {
        Document document = new Document("name", "Alice")
                .append("age", 25)
                .append("skills", Arrays.asList("Java", "MongoDB", "Spring"));
        collection.insertOne(document);
        System.out.println("文档插入成功: " + document.toJson());
    }

    // 查询文档示例
    public static void findDocument(MongoCollection<Document> collection) {
        Document document = collection.find(Filters.eq("name", "Alice")).first();
        if (document != null) {
            System.out.println("查询结果: " + document.toJson());
        } else {
            System.out.println("未找到符合条件的文档");
        }
    }

    // 更新文档示例
    public static void updateDocument(MongoCollection<Document> collection) {
        Bson filter = Filters.eq("name", "Alice");
        Bson updateOperation = Updates.set("age", 26);
        collection.updateOne(filter, updateOperation);
        System.out.println("文档更新成功");
    }

    // 删除文档示例
    public static void deleteDocument(MongoCollection<Document> collection) {
        Bson filter = Filters.eq("name", "Alice");
        collection.deleteOne(filter);
        System.out.println("文档删除成功");
    }
}
相关推荐
简佐义的博客7 分钟前
破解非模式物种GO/KEGG注释难题
开发语言·数据库·后端·oracle·golang
爬山算法7 分钟前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
老纪的技术唠嗑局3 小时前
OceanBase PoC 经验总结(二)—— AP 业务
数据库
阿里云大数据AI技术3 小时前
OpenSearch 视频 RAG 实践
数据库·人工智能·llm
m0_623955665 小时前
Oracle使用SQL一次性向表中插入多行数据
数据库·sql·oracle
阿蒙Amon6 小时前
C#读写文件:多种方式详解
开发语言·数据库·c#
东窗西篱梦6 小时前
Redis集群部署指南:高可用与分布式实践
数据库·redis·分布式
就是有点傻7 小时前
C#如何实现中英文快速切换
数据库·c#
1024小神8 小时前
hono框架绑定cloudflare的d1数据库操作步骤
数据库
KellenKellenHao9 小时前
MySQL数据库主从复制
数据库·mysql