import com.Dao.MapReduceDao; import com.mongodb.BasicDBObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.mapreduce.MapReduceOptions; import org.springframework.data.mongodb.core.mapreduce.MapReduceResults; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Repository; /** * @author xulei * @version 1.0 * @date 2020/7/22 10:31 */ @Repository public class MapReduceDaoImpl implements MapReduceDao { @Autowired MongoTemplate mongoTemplate; @Override public void mapReduceDao() { Query query = new Query(); query.addCriteria(Criteria.where("msg").is(false)); String mapFunction = "function(){ emit(this.location, this.name); }"; String reduceFunction = "function( key, values ){ return key + ': ' + values.join(', '); }"; MapReduceOptions mapReduceOptions = new MapReduceOptions(); MapReduceResults loginfo = mongoTemplate.mapReduce(query, "loginfo", mapFunction, reduceFunction, mapReduceOptions, BasicDBObject.class); //怎么获取结果暂时还不知道,等知道了会更新的 } }