package com.wdh.mongo;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
/**
* mongodb client for java
* @version 2.13
* */
public class MongoTest {
private String host= "192.168.78.132";
private int port = 27017;
private String userName = "wdh";
private char[] password = "wdh".toCharArray();
public void connTest()throws Exception{
ServerAddress address = new ServerAddress(host,port);
List<ServerAddress> addresses = new ArrayList<ServerAddress>();
addresses.add(address);
MongoCredential credential = MongoCredential.createCredential(userName, "wdh", password);
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(credential);
MongoClient client = new MongoClient(addresses,credentials);
DB db = client.getDB("wdh");
DBCollection collection = db.getCollection("person");
}
public void findTest()throws Exception{
ServerAddress address = new ServerAddress(host,port);
List<ServerAddress> addresses = new ArrayList<ServerAddress>();
addresses.add(address);
MongoCredential credential = MongoCredential.createCredential(userName, "wdh", password);
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(credential);
MongoClient client = new MongoClient(addresses,credentials);
DB db = client.getDB("wdh");
DBCollection collection = db.getCollection("person");
DBObject query = new BasicDBObject();
query.put("name", "zhangsan");
DBCursor cursor = collection.find(query);
//collection.find(query).sort(DBObject).limit(100).skip(100);
DBObject item = null;
while(cursor.hasNext()){
item =cursor.next();
System.out.println(item.get("age"));
}
}
public void insertTest()throws Exception{
ServerAddress address = new ServerAddress(host,port);
List<ServerAddress> addresses = new ArrayList<ServerAddress>();
addresses.add(address);
MongoCredential credential = MongoCredential.createCredential(userName, "wdh", password);
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(credential);
MongoClient client = new MongoClient(addresses,credentials);
DB db = client.getDB("wdh");
DBCollection collection = db.getCollection("person");
BasicDBObject query = new BasicDBObject();
query.append("name", "wangdonghua");
query.append("age", 31);
query.append("salary", 8888);
query.append("dept", "dev");
collection.insert(query);
}
public void removeTest()throws Exception{
ServerAddress address = new ServerAddress(host,port);
List<ServerAddress> addresses = new ArrayList<ServerAddress>();
addresses.add(address);
MongoCredential credential = MongoCredential.createCredential(userName, "wdh", password);
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(credential);
MongoClient client = new MongoClient(addresses,credentials);
DB db = client.getDB("wdh");
DBCollection collection = db.getCollection("person");
DBObject query = new BasicDBObject();
query.put("name", "wangdonghua");
collection.remove(query);
}
public void updateTest()throws Exception{
ServerAddress address = new ServerAddress(host,port);
List<ServerAddress> addresses = new ArrayList<ServerAddress>();
addresses.add(address);
MongoCredential credential = MongoCredential.createCredential(userName, "wdh", password);
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(credential);
MongoClient client = new MongoClient(addresses,credentials);
DB db = client.getDB("wdh");
DBCollection collection = db.getCollection("person");
BasicDBObject query = new BasicDBObject();
query.put("name", "wangdonghua");
DBCursor cursor = collection.find(query);
BasicDBObject item = null;
while(cursor.hasNext()){
item = (BasicDBObject)cursor.next();
item.append("age", 18);
collection.save(item);
}
}
}
----------------------------------相关参考-----------------------------------------------
http://docs.mongodb.org/ecosystem/tutorial/use-aggregation-framework-with-java-driver/