【教程】Java 集成Mongodb

【教程】Java 集成Mongodb

依赖

复制代码
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongo-java-driver</artifactId>
            <version>3.12.14</version>
        </dependency>

        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.8.20</version>
        </dependency>

MongoDB客户端封装-MongoDS | Hutool

配置文件 带认证 账号密码的

config/mongo.setting

复制代码
#每个主机答应的连接数(每个主机的连接池大小),当连接池被用光时,会被阻塞住 ,默以为10 --int
connectionsPerHost=100
#线程队列数,它以connectionsPerHost值相乘的结果就是线程队列最大值。如果连接线程排满了队列就会抛出"Out of semaphores to get db"错误 --int
threadsAllowedToBlockForConnectionMultiplier=10
#被阻塞线程从连接池获取连接的最长等待时间(ms) --int
maxWaitTime = 120000
#在建立(打开)套接字连接时的超时时间(ms),默以为0(无穷) --int
connectTimeout=0
#套接字超时时间;该值会被传递给Socket.setSoTimeout(int)。默以为0(无穷) --int
socketTimeout=0
#是否打开长连接. defaults to false --boolean
socketKeepAlive=false

#---------------------------------- MongoDB实例连接
[master]
host = 127.0.0.1:27017
user = root
pass = 123456
database = admin



# [slave]
# host = 127.0.0.1:27018
#-----------------------------------------------------

使用方法

复制代码
MongoDatabase db = MongoFactory.getDS("master").getDb("test");

修改

复制代码
MongoDatabase db = WTool.mongoGetDefDb();
Bson filter = Filters.in("_id", ids);
Bson update = Updates.set("status", -2);
//        UpdateOptions options = new UpdateOptions().arrayFilters(Arrays.asList(Filters.eq("array_filter_name.field_name", "field_value")));

db.getCollection("res_phone").updateMany(filter, update);
相关推荐
小信丶8 分钟前
Spring Cloud Stream EnableBinding注解详解:定义、应用场景与示例代码
java·spring boot·后端·spring
无限进步_12 分钟前
【C++】验证回文字符串:高效算法详解与优化
java·开发语言·c++·git·算法·github·visual studio
亚历克斯神13 分钟前
Spring Cloud 2026 架构演进
java·spring·微服务
浅时光_c16 分钟前
12 指针
c语言·开发语言
七夜zippoe16 分钟前
Spring Cloud与Dubbo架构哲学对决
java·spring cloud·架构·dubbo·配置中心
海派程序猿17 分钟前
Spring Cloud Config拉取配置过慢导致服务启动延迟的优化技巧
java
charlie11451419119 分钟前
嵌入式现代C++工程实践——第10篇:HAL_GPIO_Init —— 把引脚配置告诉芯片的仪式
开发语言·c++·stm32·单片机·c
call me by ur name21 分钟前
ERNIE 5.0 Technical Report论文解读
android·开发语言·人工智能·机器学习·ai·kotlin
dog25021 分钟前
细看高维空间中距离度量失效
开发语言·php
码云数智-大飞24 分钟前
Rust的所有权模型如何消除内存安全问题?与C++的RAII有何异同?
开发语言