有没有办法Map排序对象的属性?举个小例子:
dto
public class OrderDto {
private long totalAmount;
private long openAmount;
}
和一个实体
@Entity
public class Order {
private long amount;
}
和一个控制器
@RestController
public class OrderController {
@GetMapping("/orders")
public Page<OrderDto> findOrders(Pageable pageable) {
// Do something
}
}
我现在打电话 /orders?sort=totalAmount,desc
是否可以Mapsort属性,在本例中为 totalAmount
从dto到only amount
以charmant方式将其用于生成的jpa查询?
1条答案
按热度按时间1cklez4t1#
我不知道你的问题是否正确,但是。。。
我是否理解您是否正确,您希望Map请求参数
sort
有价值totalAmount,desc
可通过Sort
给定对象Pageable
对象为amount
(有秩序地)desc
)?由于您在文章中提到的名称,我希望您在类路径上有spring数据。
idkfs,但可能是班级
SortHandlerMethodArgumentResolverCustomizer
可以帮助您自定义SortHandlerMethodArgumentResolver
这样,您就可以像您希望的那样Map请求参数。如果没有,那么应该可以提供类型为的@bean
SortHandlerMethodArgumentResolver
它实现了您想要的行为。我不完全确定该框架是否允许覆盖您需要定制的特定部分,但值得一看。:)