Java基础教程(21)-Java连接MongoDB

本文涉及的产品
云数据库 PolarDB MySQL 版,列存表分析加速 8核16GB
PolarDB Agent Flow,2核4GB
PolarDB Agent Express,2核4GB
简介: 【4月更文挑战第21天】MongoDB是开源的NoSQL数据库,强调高性能和灵活性。Java应用通过MongoDB Java驱动与之交互,涉及MongoClient、MongoDatabase、MongoCollection和Document等组件。连接MongoDB的步骤包括:配置连接字符串、创建MongoClient、选择数据库和集合。伪代码示例展示了如何建立连接、插入和查询数据。

非关系型数据库MongoDB介绍:

非关系型数据库(NoSQL数据库)是指那些不使用传统关系模型(如表格、行和列)来组织和存储数据的数据库系统。与关系型数据库 MySQL相比,非关系型数据库采用了不同的数据模型和架构设计;

MongoDB 是一款面向文档(document-oriented)的、开源的、高性能的、分布式的、模式自由(schema-free)的 NoSQL 数据库管理系统。

使用Java连接mongodb并交互

Java应用程序与MongoDB交互通常使用官方提供的MongoDB Java驱动,该驱动提供了与JDBC类似的API;

主要组件包括MongoClient、MongoDatabase、MongoCollection、Document等。

编码实现使用MongoDB Java驱动进行连接

1、在官方网站下载驱动依赖包
2、添加MongoDB Java驱动依赖到项目中
3、创建MongoClient实例,连接到MongoDB服务器
4、选择要操作的MongoDatabase和MongoCollection

伪代码如下:

import com.mongodb.ConnectionString;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoDatabase;

public class MongoDBConnection {
   

    public static void main(String[] args) {
   
        // 1. 定义MongoDB连接字符串
        String connectionString = "mongodb://username:password@localhost:27017/?authSource=admin&ssl=false";

        // 2. 创建MongoClient实例
        MongoClient mongoClient = MongoClients.create(connectionString);

        // 3. 连接到指定数据库
        MongoDatabase database = mongoClient.getDatabase("DatabaseName");

        // 4. 执行操作(例如,获取集合、查询数据等)
        MongoCollection<Document> collection = database.getCollection("CollectionName");
        // ... 进行数据库操作 ...

        // 5. 在应用结束时关闭连接
        mongoClient.close();
    }
}

编码实现数据操作

5、使用MongoCollection的insertOne、updateOne、deleteOne等方法执行数据操作

6、使用find、aggregate等方法执行查询,并处理返回的Cursor或List

伪代码如下:

import com.mongodb.ConnectionString;
import com.mongodb.MongoClientSettings;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

public class MongoDBConnection {
   
    public static void main(String[] args) {
   
        // 1. 定义MongoDB连接字符串
        String connectionString = "mongodb://username:password@localhost:27017/?authSource=admin&retryWrites=true&w=majority";

        // 2. 创建MongoClientSettings对象
        MongoClientSettings settings = MongoClientSettings.builder()
                .applyConnectionString(new ConnectionString(connectionString))
                .build();

        // 3. 创建MongoClient实例
        try (MongoClient mongoClient = MongoClients.create(settings)) {
   
            // 4. 连接到指定数据库
            MongoDatabase database = mongoClient.getDatabase("your_database_name");

            // 5. 选择目标集合
            MongoCollection<Document> collection = database.getCollection("your_collection_name");

            // 6. 执行操作

            // 插入一个文档
            Document doc = new Document("title", "Example Document")
                    .append("content", "This is an example document.");
            collection.insertOne(doc);

            // 查询文档
            FindIterable<Document> iterable = collection.find();
            for (Document foundDoc : iterable) {
   
                System.out.println(foundDoc.toJson());
            }
        } catch (Exception e) {
   
            e.printStackTrace();
        }
    }
}
相关文章
|
9月前
|
SQL Java 关系型数据库
Java连接MySQL数据库环境设置指南
请注意,在实际部署时应该避免将敏感信息(如用户名和密码)硬编码在源码文件里面;应该使用配置文件或者环境变量等更为安全可靠地方式管理这些信息。此外,在处理大量数据时考虑使用PreparedStatement而不是Statement可以提高性能并防止SQL注入攻击;同时也要注意正确处理异常情况,并且确保所有打开过得资源都被正确关闭释放掉以防止内存泄漏等问题发生。
436 13
|
消息中间件 存储 NoSQL
java连接redis和基础操作命令
通过以上内容,您可以掌握在Java中连接Redis以及进行基础操作的基本方法,进而在实际项目中灵活应用。
743 30
|
NoSQL JavaScript 前端开发
Java访问MongoDB
Java访问MongoDB
249 21
|
Java Linux 数据库
java连接kerberos用户认证
java连接kerberos用户认证
492 22
|
SQL NoSQL Java
Java使用sql查询mongodb
通过MongoDB Atlas Data Lake或Apache Drill,可以在Java中使用SQL语法查询MongoDB数据。这两种方法都需要适当的配置和依赖库的支持。希望本文提供的示例和说明能够帮助开发者实现这一目标。
673 17
|
存储 NoSQL Linux
微服务2——MongoDB单机部署4——Linux系统中的安装启动和连接
本节主要介绍了在Linux系统中安装、启动和连接MongoDB的详细步骤。首先从官网下载MongoDB压缩包并解压至指定目录,接着创建数据和日志存储目录,并配置`mongod.conf`文件以设定日志路径、数据存储路径及绑定IP等参数。之后通过配置文件启动MongoDB服务,并使用`mongo`命令或Compass工具进行连接测试。此外,还提供了防火墙配置建议以及服务停止的两种方法:快速关闭(直接杀死进程)和标准关闭(通过客户端命令安全关闭)。最后补充了数据损坏时的修复操作,确保数据库的稳定运行。
864 0
|
NoSQL JavaScript Shell
微服务2——MongoDB单机部署2——Shell连接
本节介绍如何通过Shell连接MongoDB数据库,使用`mongo`命令登录,默认连接本地127.0.0.1的27017端口。可查看数据库列表(`show databases`),退出shell(`exit`),或通过`--help`获取更多参数。MongoDB Shell基于JavaScript解释器,支持运行JS程序。
336 0
|
前端开发 Java 数据库连接
Java后端开发-使用springboot进行Mybatis连接数据库步骤
本文介绍了使用Java和IDEA进行数据库操作的详细步骤,涵盖从数据库准备到测试类编写及运行的全过程。主要内容包括: 1. **数据库准备**:创建数据库和表。 2. **查询数据库**:验证数据库是否可用。 3. **IDEA代码配置**:构建实体类并配置数据库连接。 4. **测试类编写**:编写并运行测试类以确保一切正常。
839 2
|
SQL NoSQL Java
Java使用sql查询mongodb
通过使用 MongoDB Connector for BI 和 JDBC,开发者可以在 Java 中使用 SQL 语法查询 MongoDB 数据库。这种方法对于熟悉 SQL 的团队非常有帮助,能够快速实现对 MongoDB 数据的操作。同时,也需要注意到这种方法的性能和功能限制,根据具体应用场景进行选择和优化。
655 9
|
11月前
|
NoSQL MongoDB 数据库
数据库数据恢复—MongoDB数据库数据恢复案例
MongoDB数据库数据恢复环境: 一台操作系统为Windows Server的虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 工作人员在MongoDB服务仍然开启的情况下将MongoDB数据库文件拷贝到其他分区,数据复制完成后将MongoDB数据库原先所在的分区进行了格式化操作。 结果发现拷贝过去的数据无法使用。管理员又将数据拷贝回原始分区,MongoDB服务仍然无法使用,报错“Windows无法启动MongoDB服务(位于 本地计算机 上)错误1067:进程意外终止。”

推荐镜像

更多