`

【转】java操作mongo简单实例

 
阅读更多
package maven.demo.test;

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

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.QueryOperators;

public class MongoDB {
	private static void print(String str){
		System.out.println(str);
	}
	public static void main(String[] args) {
		try {
			//创建连接
			Mongo m=new Mongo("127.0.0.1", 27017);
			//得到数据库
			DB db=m.getDB("test");
			//得到所有数据库
//			List<String> colls=m.getDatabaseNames();
//			for(String str:colls){
//				System.out.println(str); 
//			}
			
//			//得到所有的集合(表)
//			for(String collection:db.getCollectionNames()){
//				System.out.println(collection); 
//			}
			
			//删除一个数据库
			//m.dropDatabase("sun");
			
			//得到sun表
			DBCollection coll=db.getCollection("things");
			
			//查看一个表的索引
//			for(DBObject index:coll.getIndexInfo()){
//				System.out.println(index); 
//			}
			
//			DBObject myDoc=coll.findOne();
//			System.out.println(myDoc); 
			
			//添加
//			BasicDBObject doc=new BasicDBObject();
//			doc.put("name", "sunshan");
//			doc.put("sex", "男");
//			doc.put("age", 22);
			//coll.insert(doc);

			//删除
			//coll.remove(doc);
			
//			BasicDBObject doc1=new BasicDBObject();
//			doc1.put("i", 0);
//			doc1.put("j", "foo");
//			BasicDBObject doc2=new BasicDBObject();
//			doc2.put("hello", "world");
//			doc1.put("doc2", doc2);
//			coll.insert(doc1);
			
			//修改
//			BasicDBObject doc3=new BasicDBObject();
//			doc3.put("x", 6);
//			BasicDBObject doc4=new BasicDBObject();
//			doc4.put("x", 1);
//			coll.update(doc3, doc4,true,false);
			//如果数据库不存在就添加 |多条修改 false只修改第一天,true如果有多条就不修改
			
			//条件查询
			//System.out.println(coll.find(doc4));
			
			//coll.findAndRemove(doc4);
			
//			//批量插入
//			List<DBObject> datas=new ArrayList<DBObject>();
//			for(int i=0;i<10;i++){
//				BasicDBObject bd=new BasicDBObject();
//				bd.put("name", "data");
//				bd.append("age", i);
//				datas.add(bd);
//			}
//			coll.insert(datas);
			
			//添加
//		    BasicDBObjectBuilder documentBuilder = BasicDBObjectBuilder.start();
//			documentBuilder.add("database", "mkyongDB");
//			documentBuilder.add("table", "hosting");
//			BasicDBObjectBuilder documentBuilderDetail = BasicDBObjectBuilder.start();
//			documentBuilderDetail.add("records", "99");
//			documentBuilderDetail.add("index", "vps_index1");
//			documentBuilderDetail.add("active", "true");
//			documentBuilder.add("detail", documentBuilderDetail.get());
//			coll.insert(documentBuilder.get());
			
			//添加
//			Map<Object,Object> map=new HashMap<Object,Object>();
//			map.put("a", 1);
//			map.put("b", "b");
//			coll.insert(new BasicDBObject(map));
			
			//添加
//			String json ="{'1' : '1','2' : '2',"+"'11' : {'1' : 1, '2' : '2', '3' : '3'}}";
//			DBObject dbobject=(DBObject)JSON.parse(json);
//			coll.insert(dbobject);
			
			//更新
//			BasicDBObject bdo=new BasicDBObject();
//			bdo.put("x", 11);
//			coll.update(new BasicDBObject().append("x", 0), bdo);
			
			//更新
//			BasicDBObject bdo=new BasicDBObject().append("$inc", new BasicDBObject().append("x", 12));
//			coll.update(new BasicDBObject().append("x", 11), bdo);
			
			//更新 
			//如果不使用$set 直接是 age则所有的都会更新
			//根据age为9条件把name:data修改为 name:sun
//			BasicDBObject bdo=new BasicDBObject().append("$set", new BasicDBObject().append("name", "sunshan"));
//			coll.update(new BasicDBObject().append("age", 9), bdo);
			
			//更新 
			//根据name为data条件把age:批量修改为 age:age
//			BasicDBObject bdo=new BasicDBObject().append("$set", new BasicDBObject().append("age", "age"));
//			coll.update(new BasicDBObject().append("name", "data"), bdo,false, true);
			
			//查询age=1
//			print("find:"+coll.find(new BasicDBObject("age", 1)).toArray());
			//查询age<=1
//			print("find: "+coll.find(new BasicDBObject("age", new BasicDBObject("$lte", 1))).toArray());  
			//查询age>=1
//			print("fint: "+coll.find(new BasicDBObject("age", new BasicDBObject("$gte", 1))).toArray());
			//查询age!=1
//     		print("fint: "+coll.find(new BasicDBObject("age", new BasicDBObject("$ne", 1))).toArray());
			//查询age=1,2,3
//			print("fint: "+coll.find(new BasicDBObject("age", new BasicDBObject(QueryOperators.IN ,new int[]{1,2,3}))).toArray());
			//查询age!=1,2,3
//			print("find: "+coll.find(new BasicDBObject("age" ,new BasicDBObject(QueryOperators.NIN ,new int[]{1,2,3}))).toArray());

//			print("find: "+coll.find(new BasicDBObject("age" ,new BasicDBObject(QueryOperators.EXISTS ,true))).toArray());
			//查询age属性
//			print("find: "+coll.find(null ,new BasicDBObject("age" ,true)).toArray());
			
//			List<DBObject> list=coll.find().toArray();
//			for(Object obj:list){
//				System.out.println(obj); 
//			}
			
			//true查询出来存在的  /false 查询出来不存在的
			//print(""+coll.find(new BasicDBObject("y",new BasicDBObject(QueryOperators.EXISTS,false))).toArray());
			
//			DBObject dbc=new BasicDBObject();
//			dbc.put("name", 1111);
//			List<DBObject> list=new ArrayList<DBObject>();
//			list.add(dbc);
//			System.out.println(coll.insert(list).getN()); 
				
//			//查询部分数据块
//			DBCursor cursor=coll.find().skip(1);
//			while(cursor.hasNext()){
//				System.out.println(cursor.next()); 
//			}

//			DBCursor cur=coll.find(); //DBCursor cur=coll.find().limit(2); 
//			while(cur.hasNext()){
//				System.out.println(cur.next());  
//			}
			//System.out.println(cur.getCursorId()+" "+cur.count()+" "+JSON.serialize(cur));   
			
			//条件查询
			BasicDBObject doc5=new BasicDBObject();
			doc5.put("$gt", 1);
			doc5.put("$lt", 3);
		    print("find 21<y<23:"+coll.find(new BasicDBObject("y", doc5)).toArray()); 
//			BasicDBObject doc5=new BasicDBObject();
//			doc5.put("$gt", 1);
//			doc5.put("$lt", 3);
//			BasicDBObject doc6=new BasicDBObject();
//			doc6.put("x", doc5);
//			System.out.println(coll.find(doc6));

} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

 

分享到:
评论

相关推荐

    MongoDB Java操作大全 源代码 实例

    MongoDB Java操作大全 源代码 实例

    mongo-java-driver最新jar.zip

    mongo-java-driver3.0以上jar压缩包大全 try { //1.连接池相关选项配置 MongoClientOptions options=MongoClientOptions.builder() .connectionsPerHost(poolSize) .minConnectionsPerHost(minpoolsize) ...

    java操作mongodb存储文件实例

    将一系列图片文件存储到MongoDB中 java操作mongodb存储文件

    java操作mongoDB查询的实例详解

    java操作mongo查询的实例详解 前言:  MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。  MongoDB是一个介于关系数据库和非关系数据库之间的产品,...

    java操作MongoDB数据库代码实例

    该rar包中包括MOngoDB数据库操作基本的增删改查,以及在CMD命令行中怎么配置MOngodb和增删改查,还有就是连接mongoDB的jar包和详细的操作文档,本来想上传NOde.js来着,可是只能上传60兆,只能放弃了,不过这些已经...

    MongoDB系列教程(六):java操作mongodb实例

    主要介绍了MongoDB系列教程(六):java操作mongodb实例,本文讲解了java中操作mongodb数据增加、删除、修改、查询数据等代码实例,需要的朋友可以参考下

    mongo-java-driver-3.4.3,java连接mongodb的jar包驱动包

    mongo-java-driver-3.4.3.jar 是 MongoDB 官方为 Java 开发者提供的 Java 驱动程序的一...这个 JAR 文件包含了与 MongoDB 数据库进行交互所需的类和接口,允许 Java 应用程序连接到 MongoDB 实例并执行各种数据库操作。

    java操作mongodb实现CURD功能实例

    mongodb支持多种语言,并且提供了多种语言的驱动,本文使用java操作mongodb实现CURD功能,大家参考使用吧

    java连接mongoDB并进行增删改查操作实例详解

    主要介绍了java连接mongoDB并进行增删改查操作,结合实例形式详细分析了java环境下MongoDB扩展包的下载、安装及操作MongoDB连接、增删改查等相关操作技巧,需要的朋友可以参考下

    mongo-java-driver-reactivestreams:MongoDB 的 Java Reactive Stream 驱动程序

    Mongo Java 驱动程序的实现。 [ ] ( ) |文献资料所有主要版本的文档都可以在支持/反馈有关 MongoDB Java 驱动程序的问题、疑问或反馈,请查看我们的。 请不要直接通过电子邮件向任何 Java 驱动程序开发人员发送问题...

    springMongodb参考文档中文版

    使用基于Java的元数据注册Mongo实例 9.3.2。使用基于XML的元数据注册Mongo实例 9.3.3。MongoDbFactory接口 9.3.4。使用基于Java的元数据注册MongoDbFactory实例 9.3.5。使用基于XML的元数据注册MongoDbFactory实例 ...

    mongo-java-driver:MongoDB的Java驱动程序

    如果遇到连接问题,则粘贴构造MongoClient实例的代码行以及传递给构造函数的所有参数的值通常也很有用。 您还应该检查应用程序日志中是否有任何与连接相关的异常,并发布这些异常。 错误/功能请求 认为您发现了错误...

    java操作mongodb基础(查询 排序 输出list)

    java操作mongodb基础学习查询,排序,limit,输出为list实例,大家参考使用吧

    四种数据库(MySQL,HBase,Redis,MongoDB)的Java客户端所需jar包.zip

    hbase的JAVA客户端所需...mongo的JAVA客户端所需jar包 MySQL的JAVA客户端所需jar包 大数据——四种数据库(MySQL,HBase,MongoDB,Redis)操作实例总结:https://blog.csdn.net/weixin_43042683/article/details/106230370

    ophelia:一个基于网络的 mongo 客户端

    在机器上运行时,您可以连接到本地 mongo 实例并对您想要的任何集合运行查询。 目前,它仅适用于 mongo 的本地实例,但很快就会改变。 希望。 如何运行它 只需下载 war 文件并部署到您最喜欢的 servlet 容器中。 ...

    mongodb数据库基本操作.pdf

    在 MongoDB 中,可以通过 MongoDB Shell(mongo)或者使用各种可用的驱动程序(如Java驱动程序)执行数据库操作。以下是 MongoDB 中的一些基本数据库操作: ### 连接到数据库 ```bash # 连接到本地 MongoDB 实例 ...

    hackernews-graphql-java:从https学习graphql的项目

    需要一个本地Mongo数据库实例,并带有一个名为“ hackernews”的数据库。 如果程序运行时不可用,则将创建一个称为“链接”的集合。 在OSX上将Mongo DB作为服务运行 酿造服务启动mongodb-community@4.4 停止将Mongo ...

    mongodb中按天进行聚合查询的实例教程

    主要给大家介绍了关于mongodb中按天进行聚合查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mongodb具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

Global site tag (gtag.js) - Google Analytics