MongoDB快速入门笔记(八)之MongoDB的java驱动操作代码讲解

 更新时间:2016年06月03日 11:47:10   作者:tiger_zhang  
这篇文章主要介绍了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<ServerAddress> addrs = new ArrayList<ServerAddress>();
addrs.add(serverAddress);
// 三个参数分别为 用户名 数据库名称 密码
MongoCredential credential = MongoCredential
.createScramSha1Credential("zyh", "admin",
"zyh".toCharArray());
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(credential);
// 通过连接认证获取MongoDB连接
MongoClient mongoClient = new MongoClient(addrs, credentials);
// 连接到数据库
MongoDatabase mongoDatabase = mongoClient.getDatabase("zyhdb");
// 新建集合,执行后会在数据库里新建一个空的集合
// mongoDatabase.createCollection("student");
// System.out.println("新建集合成功");
// 获取集合,并往集合中插入数据
MongoCollection<Document> mongoCollection = mongoDatabase
.getCollection("student");
// 插入一条数据
// Document document = new Document();
// document.append("name", "zhangsan");
// document.append("age", 28);
// mongoCollection.insertOne(document);
// System.out.println("插入一条数据成功");
// 插入多条数据
// List<Document> documentList = new ArrayList<Document>();
// 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<Document> findIterable = mongoCollection.find();
// MongoCursor<Document> 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<Document> findIterable = mongoCollection.find(query)
// .sort(sort);
// MongoCursor<Document> 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相关知识,敬请关注脚本之家网站!

相关文章

  • CentOS安装和设置MariaDB的教程

    CentOS安装和设置MariaDB的教程

    这篇文章主要介绍了CentOS安装和设置MariaDB的教程的相关资料,需要的朋友可以参考下
    2015-09-09
  • MariaDB中的thread pool详细介绍和使用方法

    MariaDB中的thread pool详细介绍和使用方法

    这篇文章主要介绍了MariaDB中的thread pool详细介绍和使用方法,thread pool对高并发的环境是很好的一个解决方法,需要的朋友可以参考下
    2014-07-07
  • centos 7安装mysql5.5和安装 mariadb使用的命令

    centos 7安装mysql5.5和安装 mariadb使用的命令

    以前的Linux系统中数据库大部分是mysql,不过自从被sun收购之后,就没用集成在centos这些开源Linux系统中了,那么如果想用的话就需要自己安装了,在安装过程中肯定会用到些命令,下面通过本篇文章给大家介绍centos 7安装mysql5.5和安装 mariadb使用的命令
    2015-09-09
  • MariaDB10.5.6的安装与使用详解

    MariaDB10.5.6的安装与使用详解

    这篇文章主要介绍了MariaDB10.5.6的安装与使用详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • Windows10系统下安装MariaDB 的教程图解

    Windows10系统下安装MariaDB 的教程图解

    MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。这篇文章给大家介绍Windows10系统下安装MariaDB 的教程图解,感兴趣的朋友一起看看吧
    2018-12-12
  • CentOS6.7系统中编译安装MariaDB数据库

    CentOS6.7系统中编译安装MariaDB数据库

    本文主要是给大家详细讲述了如何在CentOS6.7系统中编译安装MariaDB数据库,有需要的小伙伴可以参考下
    2016-11-11
  • MariaDB中1045权限错误导致拒绝用户访问的错误解决方法

    MariaDB中1045权限错误导致拒绝用户访问的错误解决方法

    这篇文章主要介绍了MariaDB中1045权限错误导致拒绝用户访问的错误解决方法,需要的朋友可以参考下
    2016-01-01
  • 关于mongoose连接mongodb重复访问报错的解决办法

    关于mongoose连接mongodb重复访问报错的解决办法

    这篇文章主要介绍了关于mongoose连接mongodb重复访问报错的解决办法的相关资料,需要的朋友可以参考下
    2016-01-01
  • MariaDB表表达式之公用表表达式(CTE)

    MariaDB表表达式之公用表表达式(CTE)

    公用表表达式(Common Table Expression)是SQL Server2005版本的引入的一个特性,CTE可以看组是一个临时的结果集,下面这篇文章主要给大家介绍了关于MariaDB表表达式之公用表表达式(CTE)的相关资料,需要的朋友可以参考下
    2022-01-01
  • Mac中MariaDB数据库的安装步骤

    Mac中MariaDB数据库的安装步骤

    大家都知道MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。这篇文章我们将详细介绍在Mac中安装MariaDB数据库的步骤,有需要可以参考学习。
    2016-09-09

最新评论