package com.student; import java.awt.List; import java.net.CookieHandler; import java.util.Arrays; import java.util.HashMap; import java.util.LinkedList; import java.util.Map; import javax.print.Doc; import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; import org.bson.Document; import com.mongodb.AggregationOutput; import com.mongodb.BasicDBObject; import com.mongodb.Block; import com.mongodb.CommandResult; import com.mongodb.MongoClient; import com.mongodb.client.AggregateIterable; import com.mongodb.client.DistinctIterable; import com.mongodb.client.ListIndexesIterable; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import com.mongodb.client.model.IndexOptions; import static com.mongodb.client.model.Filters.*; import static com.mongodb.client.model.Accumulators.*; import static com.mongodb.client.model.Aggregates.*; import static com.mongodb.client.model.Filters.eq; public class MainStudent { public static void main(String[] args) { //创建连接的客户端 MongoClient client = new MongoClient("localhost",27017); //获取数据库对象 MongoDatabase db = client.getDatabase("DBJava"); //获取操作的集合对象 MongoCollection<Document> collection = db.getCollection("java_test"); System.out.println("Connection Sucessfully!"); //创建唯一索引 collection.createIndex(new Document("no",1),new IndexOptions().unique(true)); collection.createIndex(new Document("name",1));//创建普通索引 //collection.dropIndex(new Document("no",1));//删除索引 //显示所有索引 ListIndexesIterable<Document> list = collection.listIndexes(); for (Document document : list) { System.out.println(document.toJson()); } new Stu_List().SearchAll(collection); } } //聚合操作 //match(eq("academy","计算机")), //显示每个学院的参赛人数 /*AggregateIterable<Document> iterable = collection.aggregate(Arrays.asList(group("$academy", sum("参赛人数:",1)))); printResult("", iterable); //每个学院平均分 AggregateIterable<Document> iterable = collection.aggregate(Arrays.asList(group("$academy", avg("avg:","$grade")))); printResult("", iterable); //每个学院的最高分 AggregateIterable<Document> iterable = collection.aggregate(Arrays.asList(group("$academy", max("max:","$grade")))); printResult("", iterable); //每个学院的最低分 AggregateIterable<Document> iterable = collection.aggregate(Arrays.asList(group("$academy", min("max:","$grade")))); printResult("", iterable); AggregateIterable<Document> iterable = collection.aggregate(Arrays.asList(match(eq("name","liu")),group("$no", sum("max:","$grade")))); printResult("", iterable); DistinctIterable<String> di = collection.distinct("academy", String.class); di.forEach(new Block<String>() { public void apply(final String str) { System.out.println(str); } }); AggregateIterable<Document> iterable = collection.aggregate(Arrays.asList(group("$academy", sum("参赛人数:",1), max("max:","$grade"),min("min:","$grade"),avg("avg:","$grade")))); printResult("", iterable); //打印聚合结果 public static void printResult(String doing, AggregateIterable<Document> iterable) { System.out.println(doing); iterable.forEach(new Block<Document>() { public void apply(final Document document) { System.out.println(document); } }); System.out.println("------------------------------------------------------"); System.out.println(); }*/
最近下载更多
husiyu LV3
2023年9月7日
1362440352 LV1
2022年11月27日
asdfasfsf LV1
2022年6月15日
testuser1234567 LV24
2022年5月31日
syj991023 LV2
2022年5月13日
wyx065747 LV67
2022年5月7日
wanglinddad LV55
2022年4月2日
zydandzjf LV3
2022年1月6日
希雨逍遥 LV6
2021年6月22日
xerxes_xxi LV1
2021年6月17日