gpt4 book ai didi

java - 如何从字符串手动创建 Pageable 对象

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:19:55 30 4
gpt4 key购买 nike

我在任何地方都找不到是否可以从字符串手动创建可分页,假设我们有以下服务方法

public <T> List<T> findAnything(final int page, final int size, final String sort) { // e.g. id,desc&username,asc

final Pageable pageable = new PageRequest(page, size, null);
return null;
}

我的问题是如何实例化

的对象

org.springframework.data.domain.Sort

从给定的格式字符串中,重要的是要注意这些参数是动态变化的,所以我更有可能需要一个到 spring 解析器的路径,在我的示例中我传递的是 null 而不是对象

id,desc&username,asc

编辑

更多细节我正在寻找一种机制,该机制说明 spring 如何将作为查询参数到达其余端点的“排序”字符串(带有其余默认参数)转换为 Pageable 对象

最佳答案

你可以这样做:

private Sort orderBy() {
return new Sort(Sort.Direction.DESC, "ID")
.and(new Sort(Sort.Direction.ASC, "username"));
}

我认为这是有帮助的

排序类有静态嵌套类 Order :

public static class Order{
private final Direction direction;
private final String property;
private final boolean ignoreCase;
private final NullHandling nullHandling;
}

然后你可以使用:

public static Sort by(List<Order> orders)

您可以在其中从字符串创建订单,就像简单地拆分一样。

关于java - 如何从字符串手动创建 Pageable 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53321455/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com