MongoDB实验——在Java应用程序中操作 MongoDB 数据

这篇具有很好参考价值的文章主要介绍了MongoDB实验——在Java应用程序中操作 MongoDB 数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在Java应用程序中操作 MongoDB 数据

1. 启动MongoDB Shell

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

2. 切换到admin数据库,使用root账户

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

3.开启Eclipse,创建Java Project项目,命名为MongoJava

File --> New --> Java Project

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

4.在MongoJava项目下新建包,包名为mongo

MongoJava右键 --> New --> mongo

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

5. 在mongo包下新建类,类名为mimalianjie

mongo右键 --> New --> Class

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

6. 添加项目依赖的jar包,右键单击MongoJava,选择Import

7. 选择General中的File System,点击Next

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

8. 选择存放mongo连接java的驱动程序的文件夹,并进行勾选Create top-level folder

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

9. 选中导入的文件夹中的mongo-java-driver-3.2.2.jar,右击选择Build Path中的Add to Build Path。

10. 连接数据库:编写代码,功能为连接Mongodb数据库。我们需要指定数据库名称,如果指定的数据库不存在,mongo会自动创建数据库

package mongo;

import java.util.ArrayList;

import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoDatabase;

public class mimalianjie {
	public static void main(String[] args) {
		try {
			ServerAddress serverAddress = new ServerAddress("localhost",27017);
			ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
			addrs.add(serverAddress);
			
MongoCredential credential = MongoCredential.createScramSha1Credential("root", "admin", "strongs".toCharArray());
			ArrayList<MongoCredential> credentials = new
					ArrayList<MongoCredential>();
			credentials.add(credential);

			MongoClient mongoClient = new MongoClient(addrs,credentials);
			
			MongoDatabase mongoDatabase = mongoClient.getDatabase("databaseName");
			System.out.println("Connect to database successfully");
		} catch (Exception e) {
			System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		}
	}

}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

11. 创建集合:与上述步骤相同,在mongo包下新建类,类名为chuangjianjihe,编写代码,功能为在test库下创建集合mycol(使用com.mongodb.client.MongoDatabase类中的createCollection()来创建集合)

package mongo;

import java.util.ArrayList;

import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoDatabase;

public class chuanjianjihe {
	public static void main(String[] args) {
		try {
			ServerAddress serverAddress = new ServerAddress("localhost",27017);
			ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
			addrs.add(serverAddress);
			
MongoCredential credential = MongoCredential.createScramSha1Credential("root","admin","strongs".toCharArray());
			ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();
			credentials.add(credential);
			MongoClient mongoClient = new MongoClient(addrs,credentials);
			
			MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
			System.out.println("Connect to database successfully");
			
				mongoDatabase.createCollection("mycol");
				System.out.println("集合mycol创建成功");
		}catch (Exception e) {
			System.err.println( e.getClass().getName() + ": " + e.getMessage());
		}
	}

}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

12. 在mongodb中进行验证

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

13. 获取集合:在mongo包下新建类,名为huoqujihe,并编写代码,功能为获取所需集合(使用com.mongodb.client.MongoDatabase类的 getCollection() 方法来获取一个集合)

package mongo;

import java.util.ArrayList;

import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;

public class huoqujihe {
	public static void main(String[] args) {
		try {
			ServerAddress serverAddress = new ServerAddress("localhost",27017);
			ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
			addrs.add(serverAddress);
			
			MongoCredential credential = MongoCredential.createScramSha1Credential("root","admin","strongs".toCharArray());
			ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();
			credentials.add(credential);
			
			MongoClient mongoClient = new MongoClient(addrs,credentials);
			
			MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
			System.out.println("Connect to database successfully");
			MongoCollection<org.bson.Document> collection = mongoDatabase.getCollection("mycol");
			System.out.println("集合mycol选择成功");
		} catch (Exception e) {
			System.err.println( e.getClass().getName() + ": " + e.getMessage());
		}
	}

}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

14.插入文档:在mongo包中新建类,名为charuwendang,功能为连接test库,选择mycol集合并向其中插入文档。(使用com.mongodb.client.MongoCollection类的insertMany()方法来插入一个文档)

package mongo;

import java.util.ArrayList;
import java.util.List;

import org.bson.Document;

import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;

public class charuwendang {
	public static void main (String[] args) {
		try {
			ServerAddress serverAddress = new ServerAddress("localhost",27017);
			ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
			addrs.add(serverAddress);
			
			MongoCredential credential = MongoCredential.createScramSha1Credential("root"
			,"admin","strongs".toCharArray());
			ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();
			credentials.add(credential);
			
			MongoClient mongoClient = new MongoClient(addrs,credentials);
			
			MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
			System.out.println("Connect to database successfully");
			MongoCollection<org.bson.Document> collection = mongoDatabase.getCollection("mycol");
			System.out.println("集合mycol选择成功");
			
			Document document = new Document("name", "zhangyudashuju").
			append("description", "YXCX").
			append("likes", 100).
			append("location", "BJ");
			List<Document> documents = new ArrayList<Document>();
			documents.add(document);
			collection.insertMany(documents);
			System.out.println("文档插入成功");
		}catch(Exception e) {
			System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		}
	}
}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

15.在mongodb中进行查询验证

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

16. 检索文档:在mongo包中新建类,名为jiansuosuoyouwendang,功能为检索test库下,mycol集合中的所有文档(使用 com.mongodb.client.MongoCollection 类中的 find() 方法来获取集合中的所有文档)

package mongo;

import java.util.ArrayList;

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 jiansuosuoyouwendang {
	public static void main( String args[] ){
		try{
		ServerAddress serverAddress = new ServerAddress("localhost",27017);
		ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
		addrs.add(serverAddress);
 
		MongoCredential credential = MongoCredential.createScramSha1Credential("root"
		,"admin", "strongs".toCharArray());
		ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();
		credentials.add(credential);
		 
		MongoClient mongoClient = new MongoClient(addrs,credentials);
		 
		MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
		System.out.println("Connect to database successfully");
		MongoCollection<org.bson.Document> collection = mongoDatabase.getCollection("mycol");
		System.out.println("集合mycol选择成功");
		 
		FindIterable<Document> findIterable = collection.find();
		MongoCursor<Document> mongoCursor = findIterable.iterator();
		while(mongoCursor.hasNext()){
		System.out.println(mongoCursor.next());
			}
		}catch(Exception e){
			System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		}
	}
}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

17. 更新文档:在mongo包中新建类,名为gengxinwendang,功能为选择test库下mycol集合,将文档中的likes=100改为likes=200(使用 com.mongodb.client.MongoCollection 类中的updateMany()方法来更新集合中的文档)

package mongo;

import java.util.ArrayList;

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;
import com.mongodb.client.model.Filters;

public class gengxinwendang {

	public static void main( String args[] ){
		try{
		ServerAddress serverAddress = new ServerAddress("localhost",27017);
			ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
			addrs.add(serverAddress);
		
			MongoCredential credential = MongoCredential.createScramSha1Credential("root"
					,"admin", "strongs".toCharArray());
			ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();
			credentials.add(credential);
		
			MongoClient mongoClient = new MongoClient(addrs,credentials);
			
			MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
		 	System.out.println("Connect to database successfully");
		 	MongoCollection<org.bson.Document> collection = mongoDatabase.getCollection("mycol");
		 	System.out.println("集合mycol选择成功");
		
		collection.updateMany(Filters.eq("likes", 100), new Document("$set",new Document("likes",200)));
		
		FindIterable<Document> findIterable = collection.find();
		MongoCursor<Document> mongoCursor = findIterable.iterator();
		while(mongoCursor.hasNext()){
			System.out.println(mongoCursor.next());
		}
		
		}catch(Exception e){
			System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		}
	}
}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

18. 在mongodb中进行查询验证

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

19. 删除文档:在mongo包中新建类,名为sanchuwendang,功能为选择test库下mycol集合,删除所有符合条件(likes=200)的文档。(使用com.mongodb.DBCollection类中的findOne()方法来获取第一个文档,然后使用remove方法删除)

package mongo;

import java.util.ArrayList;

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;
import com.mongodb.client.model.Filters;

public class shanchuwendang {
	public static void main( String args[] ){
		try{
		ServerAddress serverAddress = new ServerAddress("localhost",27017);
			ArrayList<ServerAddress> addrs = new ArrayList<ServerAddress>();
			addrs.add(serverAddress);
		
		
			MongoCredential credential = MongoCredential.createScramSha1Credential("root"
					,"admin", "strongs".toCharArray());
			ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();
			credentials.add(credential);
		
		
			MongoClient mongoClient = new MongoClient(addrs,credentials);
		
		
			MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
			System.out.println("Connect to database successfully");
			MongoCollection<org.bson.Document> collection = mongoDatabase.getCollection("mycol");
			System.out.println("集合mycol选择成功");
		
		//删除符合条件的第一个文档
		//collection.deleteOne(Filters.eq("likes", 200));
		//删除所有符合条件的文档
		collection.deleteMany (Filters.eq("likes", 200));
		//检索查看结果
		FindIterable<Document> findIterable = collection.find();
		MongoCursor<Document> mongoCursor = findIterable.iterator();
		while(mongoCursor.hasNext()){
			System.out.println(mongoCursor.next());
		}
		
		}catch(Exception e){
			System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		}
	}
}

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

20. 在mongodb中进行查询验证

MongoDB实验——在Java应用程序中操作 MongoDB 数据,MongoDB,mongodb,数据库

查询结果为空,证明文档已被删除。

至此,实验结束!文章来源地址https://www.toymoban.com/news/detail-685866.html

到了这里,关于MongoDB实验——在Java应用程序中操作 MongoDB 数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 8、MATLAB程序设计与应用刘卫国(第三版)课后实验八:数据分析与多项式计算

    目录 一、 二、  三、  四、 五、  利用MATLAB提供的rand函数生成30 000个符合均匀分布的随机数,然后检验随机数的性质。 (1)均值和标准差。  --------------------------------------- 示例代码 --------------------------------------------- --------------------------------------- 运行结果 ------------------

    2024年02月08日
    浏览(51)
  • 使用Angular和MongoDB来构建具有登录功能的博客应用程序

    Angular 是一个一站式框架,用于使用相同的可重用代码创建移动和 Web 应用程序。使用 Angular,您可以将整个应用程序划分为可重用的组件,从而更轻松地维护和重用代码。 在本教程系列中,您将学习如何开始使用 Angular 和 MongoDB 作为后端创建 Web 应用程序。您将使用 Node.js 来

    2024年02月11日
    浏览(49)
  • Java安全和防护:如何保护Java应用程序和用户数据的安全

      在当今数字化时代,Java已经成为主流的编程语言之一。无论是企业级应用程序还是个人项目,Java应用程序都承载着大量的敏感数据和业务逻辑。然而,随着网络攻击日益猖獗,保护Java应用程序和用户数据的安全变得尤为重要。本文将深入探讨Java应用程序安全的重要性,并

    2024年02月03日
    浏览(71)
  • 4、MATLAB程序设计与应用刘卫国(第三版)课后实验四:选择结构程序设计

    目录  一、  二、  三、  四、  五、 求分段函数的值   用 if语句实现,分别输出X=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。 ------------- -------- ------------ ------ 示例代码 - -------------------------- ------------------ ------------- -------- ------------ ------ 运行结果 - -------------------------- --------

    2024年02月05日
    浏览(48)
  • 3、MATLAB程序设计与应用刘卫国(第三版)课后实验三:顺序结构程序设计

    目录 一、  二、  三、  四、  五、  六、 从键盘输入一个4位整数,按如下规则加密后输出。加密规则:每位数字都加上7,然后用和除以10的余数取代该数字;然后将第一位数与第三位数互换,第二位数与第四位数互换。 ------------- -------- ------------ ------ 示例代码 ---------------

    2024年02月03日
    浏览(42)
  • 5、MATLAB程序设计与应用刘卫国(第三版)课后实验五:循环结构程序设计

    目录 一、  二、  三、  四、  五、 已知 求 y的近似值。当n分别取100、1 000、10 000时,结果是多少? 要求 :分别用循环结构和向量运算(使用sum 函数)来实现。 --------------------------------------- 示例代码 --------------------------------------------- --------------------------------------- 运行结果

    2023年04月26日
    浏览(49)
  • MySQL笔记——MySQL数据库介绍以及在Linux里面安装MySQL数据库,对MySQL数据库的简单操作,MySQL的外接应用程序使用说明

    MySQL笔记——MySQL数据库介绍以及在Linux里面安装MySQL数据库,对MySQL数据库的简单操作,MySQL的外接应用程序使用说明 MySQL笔记——表的分组查询、表的分页查询、表的约束、数据库设计 MySQL案例——多表查询以及嵌套查询 MySQL笔记——数据库当中的事务以及Java实现对数据库进

    2024年01月16日
    浏览(75)
  • 单片机原理与应用实验二 拆字程序(c语言版)

    (设计性实验) 掌握汇编语言设计和调试方法。 本程序一般用于把数据送显示缓冲区。设计思路是:利用DPTR寄存器做为地址指针,采用寄存器间接寻址的方式访问外部RAM。利用与操作指令从一个字节中取出需要的数据。 星研SUN ES59PA单片机实验仪和PC机。 实验内容:编程实

    2024年02月07日
    浏览(70)
  • 【AWS实验 】在 AWS Fargate 上使用 Amazon ECS 部署应用程序

    某团队正在开发一款在线游戏。乐观地认为该游戏会取得成功,并预计会有成千上万的游戏玩家通过互联网访问这款游戏。希望减少放在基础设施上的精力,更多地关注游戏开发。但不想分配任何前期基础设施资本来部署这款游戏。但是,想确保该应用程序在部署后可以针对

    2024年02月09日
    浏览(39)
  • 05应用程序设计和文件操作

    比如: 在qt中,如果想要使用菜单栏功能,那么界面的基类要选择QMainWindow,不能选择QWidget QDialog 实现菜单栏步骤如下: 第一步:在UI设计师,直接双击菜单栏 第二步:在UI设计师,修改文本内容和其他设置 进行设置 设置的效果图如下: 给菜单选项,增加图片资源 让用户比

    2024年02月12日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包