我尝试使用下面的代码来缩短 id(string) 参数,但它没有正确排序。
// Apply sorting
if (sort != null) {
query.with(Sort.by(Sort.Direction.DESC, sort));
或
// Apply sorting
if (sort != null) {
Sort sortOptions = Sort.by(Sort.Order.desc(sort)); // Sort in descending order
query.with(sortOptions);
}
输出:
假设 ID 为 5、10 和 11。 它给出 5 -> 11 -> 10 但它应该是 11, 10, 5。
这是正确的,因为您按
String
排序,而不是 Integer
'10' < '5'
。
您可以考虑的一个选项是使用
Long
或 Integer
创建另一个字段进行排序。
示例 Sort.by(Sort.Direction.ASC, "numbericFieldName")