根据messageStatus字段分组统计不同状态的数据量,相当于mysql里的group by 关键字。
使用mongo里的aggregation聚合关键字。
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.aggregation.Aggregation;
import org.springframework.data.mongodb.core.aggregation.AggregationResults;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author DAI
* @date 2020/5/30 19:08
* @Description TODO
*/
@Service
public class MessageReceiveLogDaoImpl implements MessageReceiveLogDao {
@Autowired
MongoTemplate mongoTemplate;
@Override
public List<MessageCount> countByMessageStatus() {
Aggregation aggregation = Aggregation.newAggregation(
Aggregation.group("messageS