NoSql之MongoDB的常用类管理(二)

2014-11-24 11:51:58 · 作者: · 浏览: 2
kage com.boonya.mongo;
import java.net.UnknownHostException;
import com.mongodb.MongoClient;
public class DatabaseManager {
public String getDatabaseNames() throws UnknownHostException{
String strNames="";
MongoClient mongoClient;
mongoClient = new MongoClient();
for (String name : mongoClient.getDatabaseNames()) {
strNames+=name+",";
}
return strNames;
}
public void dropDatabase(String databaseName) throws UnknownHostException{
MongoClient mongoClient = new MongoClient();
mongoClient.dropDatabase(databaseName);
}
}
4、文档管理
[java]
package com.boonya.mongo;
import java.util.ArrayList;
import java.util.List;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
public class DocumentManager {
private static DBCollection coll= CollectionManager.getDbCollection("myCollection");
public void insertADocument(){
BasicDBObject doc = new BasicDBObject("name", "MongoDB").append("type", "database")
.append("count", 1)
.append("info", new BasicDBObject("x", 203).append("y", 102));
coll.insert(doc);
}
/**
* PRINT BELOW:
* { "_id" : "49902cde5162504500b45c2c" ,
* "name" : "MongoDB" ,
* "type" : "database" ,
* "count" : 1 ,
* "info" : { "x" : 203 , "y" : 102}}
* @return
*/
public DBObject findTheFirstDocument(){
System.out.println("collection count:"+coll.getCount());
DBObject myDoc = coll.findOne();
System.out.println(myDoc);
return myDoc;
}
public List getADocumentsByCursor(){
List docs=new ArrayList();
DBCursor cursor =coll.find();
try {
while(cursor.hasNext()) {
DBObject obj=cursor.next();
System.out.println(obj);
docs.add(obj);
}
return docs;
} finally {
cursor.close();
}
}
/**
* PRINT LIKE THIS:
* { "_id" : "49903677516250c1008d624e" , "i" : 71 }
*/
public void queryADocument(){
BasicDBObject query = new BasicDBObject("i", 71);
DBCursor cursor =coll.find();
cursor = coll.find(query);
try {
while(cursor.hasNext()) {
System.out.println(cursor.next());
}
} finally {
cursor.close();
}
}
public void editQueryRegular(){
//db.things.find({j: {$ne: 3}, k: {$gt: 10} });
BasicDBObject query = new BasicDBObject("j", new BasicDBObject("$ne", 3)
.append("k", new BasicDBObject("$gt", 10)));
DBCursor cursor = coll.find(query);
try {
while(cursor.hasNext()) {
System.out.println(cursor.next());
}
} finally {
cursor.close();
}
}
public void getAsetDocument(){
BasicDBObject query = new BasicDBObject("i", new BasicDBObject("$gt", 50)); // e.g. find all where i > 50
// query = new BasicDBObject("i", new BasicDBObject("$gt", 20).
// append("$lte", 30)); // i.e. 20 < i <= 30
DBCursor cursor = coll.find(query);
try {
while(c