Mongo JavaTest

import com.mongodb.MongoClient;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import java.net.UnknownHostException;
import java.util.List;
import java.util.Set;

//   http://api.mongodb.org/java/2.12/
//   http://central.maven.org/maven2/org/mongodb/mongo-java-driver/
public class MongoTest {

    /**
     * @author Man_hua
     * @param args
     * @throws UnknownHostException 
     */
    public static void main(String[] args) {

        //connect
        MongoClient mongoClient;
        try {
            mongoClient = new MongoClient( "localhost" , 27017 );
        
        
        //打印所有数据库
        print("打印所有数据库");
        for (String s : mongoClient.getDatabaseNames()) {
               System.out.println(s);
        }
        
        //连接数据库
        DB db = mongoClient.getDB( "mydb" );
        
        //显示所有collection
        print("显示所有collection");
        Set<String> colls = db.getCollectionNames();
        for (String s : colls) {
            System.out.println(s);
        }
        
        //进入下一级 
        DBCollection coll = db.getCollection("testData");
        
        //单个插入
        BasicDBObject doc = new BasicDBObject("name", "MongoDB").
                append("type", "database").
                append("count", 1).
                append("info", new BasicDBObject("x", 203).append("y", 102));

        coll.insert(doc);
        
        //多个插入
        for (int i=0; i < 100; i++) {
            coll.insert(new BasicDBObject("i", i));
        }
        
        //获得记录计数
        print("获得记录计数");
        System.out.println(coll.getCount());
        
        //查询一个
        print("查询一个");
        DBObject myDoc = coll.findOne();
        System.out.println(myDoc);
        
        
        //游标遍历
        print("游标遍历");
        DBCursor cursor = coll.find();
        try {
           while(cursor.hasNext()) {
               System.out.println(cursor.next());
           }
        } finally {
           cursor.close();
        }
        
        //条件查询
        print("条件查询");
        BasicDBObject query = new BasicDBObject("i", 71);
        cursor = coll.find(query);
        try {
           while(cursor.hasNext()) {
               System.out.println(cursor.next());
           }
        } finally {
           cursor.close();
        }
        
        //带操作符的条件查询
        print("带操作符的条件查询");
        query = new BasicDBObject("i", new BasicDBObject("$gt", 20).
                append("$lte", 30));
        cursor = coll.find(query);
        try {
            while (cursor.hasNext()) {
                System.out.println(cursor.next());
            }
        } finally {
            cursor.close();
        }
        
        //创建索引
        coll.createIndex(new BasicDBObject("i", 1));  // create index on "i", ascending---ascending (1) or descending (-1)
        
        //打印索引信息
        print("打印索引信息");
        List<DBObject> list = coll.getIndexInfo();
        for (DBObject o : list) {
           System.out.println(o);
        }
        
        } catch (UnknownHostException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    
    static void print(String out){
        System.out.println(out);
    }
}
QueryBuilder builder = QueryBuilder.start("x").is(0)
                .and("y").greaterThan(10).lessThan(70);
builder.get()

DBObject query = QueryBuilder.start("x").is(0)
                .and("y").greaterThan(10).lessThan(70).get();

DBObject query = new BasicDBObject("x", 0)
                .append("y", new BasicDBObject("$gt", 10).append("$lt", 90));

DBCursor cursor = lines.find()
                .sort(new BasicDBObject("start.x", 1).append("start.y", -1))
                .skip(2).limit(10);

collection.update(new BasicDBObject("_id", "alice"),
                new BasicDBObject("$set", new BasicDBObject("age", 24)));
原文地址:https://www.cnblogs.com/manhua/p/3617722.html