MongoDB 中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果。
类似 SQL 语句中的 count(*)。
语法:
db.getCollection().aggregate(AGGREGATE_OPERATION)
使用Java往MongoDB集合中加入数据:
package mongodbtest;
?
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
?
import java.util.ArrayList;
import java.util.List;
?
/**
* 1、利用Java连接MongoDB
* 2、连接数据库practice
* 3、创建集合:practiceindex
* 4、向集合中插入10w条记录
* 5、创建索引
* 6、利用索引查询
* @since JDK 1.8
* @date 2021/7/1
* @author Lucifer
*/
public class MongoDBTestNo1 {
?
/*定义连接需要用到的属性*/
private static String MONGO_HOST = "localhost";
private static Integer MONGO_PORT = 27017;
private static final String MONGO_DB_NAME = "practice";
private static final String GATHER_NAME = "practiceaggregate";
?
public static String getMongoHost() {
return MONGO_HOST;
}
?
public static Integer getMongoPort() {
return MONGO_PORT;
}
?
public static void setMongoHost(String mongoHost) {
MONGO_HOST = mongoHost;
}
?
public static void setMongoPort(Integer mongoPort) {
MONGO_PORT = mongoPort;
}
?
/**
* 访问MongoDB服务,连接到指定的数据库
* @param mongo_host
* @param mongo_port
* @return
*/
public static MongoDatabase connection(String mongo_host, Integer mongo_port){
?
//使用MongoClient类创建Mongo连接服务
MongoClient mongoClient = new MongoClient(mongo_host,mongo_port);
?
//使用服务引用连接到数据库
MongoDatabase mongoDatabase = mongoClient.getDatabase(MONGO_DB_NAME);
System.out.println("Connect to database successfully!!!");
?
//返回Mongodatabase对象
return mongoDatabase;
?
}
?
/**
* 创建集合
* @return
*/
public static MongoDatabase createCollection(String gather_name){
?
//访问到指定的域名和端口
MongoDatabase mongoDatabase = connection(MONGO_HOST, MONGO_PORT); //创建一个connection方法的引用--->为了使用connection方法的返回对象
?
//使用mongoDatabase类创建集合
mongoDatabase.createCollection(gather_name);