java 操作mongodb的增删查改 crud
2015-12-17 11:48
661 查看
首先需要搭建mongodb的服务,这个先略过吧~~
需要导入两个jar包mongo-java-driver-2.10.1.jar , gson-2.3.1.jar
以下是用来测试,mongodbdb是否能连接得上
mongodb的增删查改,以及group 操作
需要导入两个jar包mongo-java-driver-2.10.1.jar , gson-2.3.1.jar
以下是用来测试,mongodbdb是否能连接得上
package com.zwy.mongo; import java.net.UnknownHostException; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.Mongo; public class MongoDB { public static void main(String[] args) throws UnknownHostException { //连接mogodb服务器 Mongo mg = new Mongo("192.168.23.128", 27017); //获取所有数据库 for (String name : mg.getDatabaseNames()) { System.out.println("dbName: " + name); } //获取单个数据库 DB db = mg.getDB("test"); // 查询所有的聚集集合 for (String name : db.getCollectionNames()) { System.out.println("collectionName: " + name); } //获取集合(相当于表) DBCollection users = db.getCollection("books"); // 查询所有的数据 DBCursor cur = users.find(); while (cur.hasNext()) { DBObject obj = cur.next(); System.out.println(obj); System.out.println(obj.get("pages")); } System.out.println(cur.count()); System.out.println(cur.getCursorId()); //System.out.println(JSON.serialize(cur)); } }
mongodb的增删查改,以及group 操作
package com.zwy.mongo; import java.net.UnknownHostException; import java.util.ArrayList; import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.GroupCommand; import com.mongodb.Mongo; /*修改自己的服务器ip*/ public class MongoDBCRUD { public static Mongo mg ; public static DB db ; public static void init(){ //连接mogodb服务器 try { mg = new Mongo("192.168.23.128", 27017); db = mg.getDB("zwy"); } catch (UnknownHostException e) { e.printStackTrace(); } } /*insert into person (name,age) values ('zwy*',1)*/ public static void insert() { DBCollection table = db.getCollection("person"); for(int i = 0 ; i < 10000 ; i++) { DBObject obj = new BasicDBObject(); obj.put("name", "zwy" + i); obj.put("age", Math.floor(Math.random() * i )%50); obj.put("sex", i % 2); table.insert(obj); } } /*select * from person where name = 'zwy100'*/ public static void query() { DBObject obj = new BasicDBObject(); obj.put("name", "zwy100"); DBCollection table = db.getCollection("person"); DBCursor cursor = table.find(obj); while(cursor.hasNext()) { System.out.println(cursor.next()); } /*select name from person where name = 'zwy100'*/ cursor = table.find(obj,new BasicDBObject().append("name", 1)); while(cursor.hasNext()) { System.out.println(cursor.next()); } } /*delete from person where name = 'zwy100'*/ public static void delete() { DBCollection table = db.getCollection("person"); DBObject query = new BasicDBObject(); query.put("name", "zwy100" ); table.findAndRemove(query); } /*等价于update person set age=666 where name = 'zwy100'*/ public static void update() { DBObject obj = new BasicDBObject(); obj.put("name", "zwy100"); DBObject obj2 = new BasicDBObject(); obj2.put("$set", new BasicDBObject().append("age",666)); DBCollection table = db.getCollection("person"); DBObject rs = table.findOne(obj); System.out.println(rs); System.out.println(obj2); System.out.println(table.update(rs,obj2).getN()); //table.update(rs,obj2); } public static void destroy(){ //连接mogodb服务器 if(null != mg) { mg.close(); } } /* * key:grouby 的关键字 * initial :初始化话函数,所有age相同的组别,执行reduce之前要先调用的函数 * reduce:对所有age相同的记录要执行的reduce函数 * finalize:执行完所有的reduce函数之后要调用的函数 * condition:输出的判断条件 db.person.group({ key:{age:true}, initial:{"person":[]}, $reduce:function(cur, prev) { prev.person.push(cur.name); }, finalize:function(out) { out.size = out.person.length; }, condition:{age:{$gt:20}} }) * */ public static void group() { DBCollection table = db.getCollection("person"); DBObject keys = new BasicDBObject().append("age", "true"); DBObject initial = new BasicDBObject().append("person", new ArrayList());; String reduce = "function(cur, prev) {" + "if( prev.person.length < 3)" + "prev.person.push(cur.name);" +"}"; String finalize =" function(out) { " +" out.size = out.person.length;" + "}; "; DBObject cond = new BasicDBObject().append("age",new BasicDBObject().append("$gt",20)); DBObject list = table.group(keys,cond ,initial,reduce,finalize); System.out.println(list); } public static void main(String[] args) throws UnknownHostException { init(); //insert(); //query(); group(); //update(); //delete(); destroy(); } }
相关文章推荐
- MongoDB 查询操作
- 8天学通MongoDB——第一天 基础入门
- MongoDB快速入门
- JMeter学习(十九)JMeter测试MongoDB
- MongoDB3.0+数据操作工具封装
- 一个实现数据批量从mongodb导入Mysql的方案
- Python mongoDB 客户端连接
- python实践——批量统计mongodb数据库的集合大小
- python实践——批量统计mongodb数据库的集合大小
- MongoDB Cluster Setting up [replSet + Sharding]
- Mongodb 管理
- Mongodb 聚合
- Monodb 入门
- MongoDB 数据操作
- Mongodb 索引
- MongoDB查询
- ubuntu安装mongodb
- mongodb数据同步
- MongoDB数据转移到Mysql库进行数据分析
- windows下安装mongodb扩展出现 PHP Warning: PHP Startup: in Unknown on line 0