这篇文章主要介绍了MongoDB快速入门笔记(八)之MongoDB的java驱动操作代码讲解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下

MongoDB的Java驱动是线程安全的,对于一般的应用,只要一个Mongo实例即可,Mongo有个内置的连接池(池大小默认为10个)。

下面代码给大家介绍MongoDB的java驱动操作,具体代码如下所示:

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Pattern;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
public class MongoZyh {
public static void main(String[] args) {
try {
// 连接到MongoDB服务,ServerAddress()两个参数分别为 服务器地址 和 端口
ServerAddress serverAddress = new ServerAddress("localhost", 27017);
List
         
           addrs = new ArrayList
          
           ();
addrs.add(serverAddress);
// 三个参数分别为 用户名 数据库名称 密码
MongoCredential credential = MongoCredential
.createScramSha1Credential("zyh", "admin",
"zyh".toCharArray());
List
           
             credentials = new ArrayList
            
             ();
credentials.add(credential);
// 通过连接认证获取MongoDB连接
MongoClient mongoClient = new MongoClient(addrs, credentials);
// 连接到数据库
MongoDatabase mongoDatabase = mongoClient.getDatabase("zyhdb");
// 新建集合,执行后会在数据库里新建一个空的集合
// mongoDatabase.createCollection("student");
// System.out.println("新建集合成功");
// 获取集合,并往集合中插入数据
MongoCollection
             
               mongoCollection = mongoDatabase
.getCollection("student");
// 插入一条数据
// Document document = new Document();
// document.append("name", "zhangsan");
// document.append("age", 28);
// mongoCollection.insertOne(document);
// System.out.println("插入一条数据成功");
// 插入多条数据
// List
              
                documentList = new ArrayList
               
                (); // Document document1 = new Document(); // document1.append("name", "lisi"); // document1.append("age", 28); // document1.append("sex", "男"); // Document document2 = new Document(); // document2.append("name", "wangwu"); // document2.append("age", 31); // document2.append("sex", "男"); // documentList.add(document1); // documentList.add(document2); // mongoCollection.insertMany(documentList); // System.out.println("插入多条数据成功"); // 查询数据 // 查询集合中所有的数据 // FindIterable
                
                  findIterable = mongoCollection.find(); // MongoCursor
                 
                   mongoCursor = findIterable.iterator(); // while (mongoCursor.hasNext()) { // System.out.println(mongoCursor.next()); // } // 根据条件查询 // Document query = new Document(); // query.put("age", new Document("$lt", 30)); // query.put("sex", "男"); // query.put("name", query); // 正则表达式查询 // Pattern pattern = Pattern.compile("^zhang"); // query.put("name", pattern); // 排序 // Document sort = new Document(); // sort.put("name", -1); // 1是正序,-1是倒序 // FindIterable
                  
                    findIterable = mongoCollection.find(query) // .sort(sort); // MongoCursor
                   
                     mongoCursor = findIterable.iterator(); // while (mongoCursor.hasNext()) { // Document doc = mongoCursor.next(); // System.out.print("name:" + doc.get("name") + "..."); // System.out.print("age:" + doc.get("age") + "..."); // System.out.println("sex:" + doc.get("sex") + "..."); // } // mongoCollection.findOneAndUpdate(查询条件, 修改内容); // 查询出第一条数据并修改 // mongoCollection.findOneAndDelete(查询条件); // 查询出第一条数据并删除 // mongoCollection.findOneAndReplace(查询条件, 替换内容); // 查询出第一条数据并替换 // 修改数据 // Document query = new Document(); // query.put("age", 28); // Document update = new Document(); // Document d = new Document(); // d.put("birthday", new Date()); // d.put("name", "zhangsan"); // update.put("$set", d); // mongoCollection.updateOne(query, update); // 修改查询到的第一条数据 // mongoCollection.updateMany(查询条件, 修改内容);// 修改查询到的所有数据 // 删除数据 // Document query = new Document(); // query.put("age", 28); // mongoCollection.deleteOne(query); // 删除查询到的第一条数据 // mongoCollection.deleteMany(查询条件); // 删除查询到的所有数据 // mongoCollection.drop(); // 删除集合 } catch (Exception e) { e.printStackTrace(); } } }
                   
                  
                 
                
               
              
             
            
           
          
         

关于小编给大家介绍的MongoDB快速入门笔记(八)之MongoDB的java驱动操作代码讲解就给大家介绍这么多,希望对大家有所帮助,还会给大家持续更新MongoDB相关知识,敬请关注爱安网网站!

最新资讯
上门喂养宠物订单增长5倍 宠物放心寄养才是刚需

上门喂养宠物订单增长

近几年,“宠物经济”持续升温,宠物消费规模不断扩大。
我国将于7月实施首次火星探测任务

我国将于7月实施首次

今天从中国航天科技集团获悉,长征五号遥四运载火箭预计
从SARS到新型肺炎:有些人怎么就戒不掉这口“野味”

从SARS到新型肺炎:有些

非法野味市场需整顿,也需相关法律机制的改进。
线上线下联动 多家企业打响“口罩保供战”

线上线下联动 多家企

从1月22日凌晨开始,线上电商企业先后采取了多项针对健
谷歌在苹果Safari浏览器中发现多个安全漏洞

谷歌在苹果Safari浏览

谷歌研究人员在苹果公司的Safari网络浏览器中发现了多
亿万富豪马克库班:仍看多Netflix 一股也没卖

亿万富豪马克库班:仍看

亿万富翁投资者马克·库班(Mark Cuban)仍然看多Netflix,
最新文章
Windows10系统下安装MariaDB 的教程图解

Windows10系统下安装M

MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发
Exchange在接收连接器上启用匿名中继的方法

Exchange在接收连接器

这篇文章主要介绍了Exchange在接收连接器上启用匿名中
我是如何用2个Unix命令给MariaDB SQL提速的

我是如何用2个Unix命

我试图在 MariaDB(MySQL)上运行一个简单的连接查询,但性
Window7安装MariaDB数据库及系统初始化操作分析

Window7安装MariaDB数

这篇文章主要介绍了Window7安装MariaDB数据库及系统初
Windows Server 2016 服务器配置指南 之 MariaDB数据库环境搭建方法

Windows Server 2016

这篇文章主要介绍了Windows Server 2016 服务器配置指
CentOS 7中成功安装MariaDB的方法教程

CentOS 7中成功安装Ma

这篇文章主要给大家介绍了CentOS 7中成功安装MariaDB