Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带MongoDB的Spring MVC-排序和限制_Mongodb_Spring Mvc_Mongodb Java - Fatal编程技术网

带MongoDB的Spring MVC-排序和限制

带MongoDB的Spring MVC-排序和限制,mongodb,spring-mvc,mongodb-java,Mongodb,Spring Mvc,Mongodb Java,在SpringMVC中对MongoDB查询结果排序的最佳方法是什么?我已经在XML文件中设置了所有映射,我可以在服务类中调用myrepository.findAll(),它工作得很好 如何对这些结果进行排序(例如按日期排序)和/或限制结果(如按3排序等)。在Mongo本身中,只需执行db.mycollection.find().sort({postedAt:-1})就很容易了;或者抛出一个.limit(3)来获得前3个结果 在SpringMVC环境中处理这个问题的最佳方法是什么 谢谢。我觉得在M

在SpringMVC中对MongoDB查询结果排序的最佳方法是什么?我已经在XML文件中设置了所有映射,我可以在服务类中调用myrepository.findAll(),它工作得很好

如何对这些结果进行排序(例如按日期排序)和/或限制结果(如按3排序等)。在Mongo本身中,只需执行db.mycollection.find().sort({postedAt:-1})就很容易了;或者抛出一个.limit(3)来获得前3个结果

在SpringMVC环境中处理这个问题的最佳方法是什么


谢谢。

我觉得在MongoDB中进行排序很好,因为我们有很多选项,例如,您提到的方法将给出排序列表。您可以定义一个索引,它也可以使排序更容易。那么,在spring环境中进行显示应该是不需要动脑筋的。另外,如果您有分页类型的用例,那么正如您所说的,您可以在mongo层进行限制,并将那么多记录带到spring环境中。

如果您的myrepository对象是MongoRepository的实例,您可以调用findAll方法,并使用可分页对象作为参数

Pageable page = new PageRequest(0, 3, new Sort(Direction.DESC, "postedAt"));
myrepository.findAll(page);
实际上,此方法来自PagingAndSortingRepository接口