Java连接并简单操作MongoDB(新手教程)Windows

前言

本文将向您展示如何使用 MongoDB Java 驱动程序依赖项添加 Maven,需要确保您的系统已安装 JDK 8 或更高版本,使用的Intellij IDEA,使其更方便 以配置 Maven 来构建和运行您的项目。。需要确保您的系统已安装 JDK 8 或更高版本,并确保MongoDB数据库已经成功安装,MongoDB安装问题这里

一、创建Maven项目

打开IDER工具,选择新建项目,构建系统选择Maven并创建。二、导入依赖

在本项目中配置porm.xml文件,也就是引入MongoDB相关的依赖和单元测试的依赖,porm.xml文件添加的内容代码具体如下:

<dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongodb-driver-sync</artifactId>
            <version>4.10.2</version>
        </dependency>
    </dependencies>

放在如下位置,并点击如图中右上角红圈圈起来的同步按钮。

IDER会自动帮你下载配置依赖项,Maven项目的相关Jar包就会自动下载,成功引入依赖,在你的外部库里就可以看到。

三、创建资源文件,指定MonoDB相关数据

在本项目的目录src/main/resources下创建一个名为mongodb.properties(资源文件建议名称写正式一点)文件,该文件用于储存连接MongoDB数据库所需要的参数,具体代码如下:

host= 127.0.0.1
port=27017
dbname=articled

host表示主机的IP地址;

dbname表示要操作的MongoDB数据库名称;

port表示端口号;

这其中的host与port要与MongoDB的配置文件的值一致

MongoDB安装配置文件可查看这里第三、2

四、创建Java工具类,配置MongoDB的相关参数

在本项目目录src/main/java下创建一个名为com.itcast.mongodb包,在该包下创建MongoUtils.java类,用于编写Java连接MongoDB数据库的工具类,具体代码如下:

package com.itcast.mongodb;

import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoDatabase;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;


public class MongoUtils{
    private static Properties properties;
    private static MongoDatabase mongoDatabase;
    private static InputStream stream;
    private static String host;
    private static int port;
    private static String dbname;

    //创建一个静态代码块,用于初始化工具类的静态变量,该静态代码块在类加载过程中的初始化阶段执行,并且只执行一次
    static {
        //判断properties集合对象是否为空,为空则创建一个集合对象
        if (properties == null) {
            properties = new Properties();
        }
        /*
        * 由于我们会调用load方法,而load方法低层抛出了一个IOException异常,此异常为编译时期异常所以,
        * 我们调用load方法时,需要处理低层抛过来的异常*/
        try {
            //创建一个InputStream字节输入流对象,用于接收mongodb.properties配置文件中的配置参数
            stream = MongoUtils.class.getClassLoader().getResourceAsStream("mongodb.properties");
            //properties集合对象调用load()方法,将配置参数加载到properties集合中
            properties.load(stream);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        //根据mongodb.properties配置文件中的key,获取value值
        host = properties.getProperty("host");
        port = Integer.parseInt(properties.getProperty("port"));
        dbname = properties.getProperty("dbname");
    }
    //定义一个getMongoClient()方法,用于获取MOngoDB数据库的连接对象
    public static MongoClient getMongoClient(){
        String addr="mongodb://"+host+":"+port;
        MongoClient mongoClient=MongoClients.create(addr);
        return mongoClient;
    }
    //定义一个getMongoConn()方法,用于实现连接指定的MongoDB数据库
    public static MongoDatabase getMongoConn(){
        MongoClient mongoClient=getMongoClient();
        mongoDatabase=mongoClient.getDatabase(dbname);
        return mongoDatabase;
    }
}

五、创建Java测试类,连接并简单操作MongoDB数据库

 在本项目目录下/src/test/java下创建一个名为TestMongo.java的类,用于编写Java连接并操作MongoDB数据库的测试类,代码如下所示:

import com.itcast.mongodb.MongoUtils;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoIterable;
import org.junit.Test;

public class TestMongo {
    private static MongoDatabase mongoDatabase;

    public static void main(String[] args) {
        mongoDatabase= MongoUtils.getMongoConn();
    }

    @Test
    //查看数据库
    public static void getDBs(){
        MongoClient mongoClient = MongoUtils.getMongoClient();
        MongoIterable<String> strings = mongoClient.listDatabaseNames();
        for (String string : strings) {
            System.out.println(string);
        }


    }
}

@Test就是配置文件中junit的功能,可以让我们只测试这段代码,不用在主函数中去调用。

在测试代码前要先启动MongoDB数据库。

下面我将以cmd的方式启动数据库并成功连接查看。

上面进行简单查询操作用于证明我们已经成功用java连接了数据库。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
社会演员多的头像社会演员多普通用户
上一篇 2023年12月7日
下一篇 2023年12月7日

相关推荐