springData中Page是我们常用的分页,包括spring整合Elasticsearch分页同样采用Page,当你要对content内容进行排序时会发生java.lang.UnsupportedOperationException异常;
代码如下:

执行发生如下异常 :
java.lang.UnsupportedOperationException: null
at java.util.Collections$UnmodifiableList.sort(Collections.java:1331)
发掘其源码发现:
page中list使用的是 Collections$UnmodifiableList.sort中的排序。

可以看出该类直接抛出UnsupportedOperationException异常,所以要改变page中list的内容只能重新实现list,或者新new一个page类。
本文探讨了在SpringData中使用Page进行分页时,尝试对content字段进行排序导致的java.lang.UnsupportedOperationException异常现象。通过深入分析源码,揭示了问题根源在于Page内部使用的Collections$UnmodifiableList不支持排序操作。文章提供了两种解决方案:一是重新实现list,二是创建新的Page类,以绕过此限制。
3770

被折叠的 条评论
为什么被折叠?



