如何添加到列表的链接以使用 spring-jpa 进行排序?
Posted
技术标签:
【中文标题】如何添加到列表的链接以使用 spring-jpa 进行排序?【英文标题】:How to add link to column table to sort using spring-jpa? 【发布时间】:2017-05-29 21:36:15 【问题描述】:我正在使用此存储库中的代码在 Springboot 中实现我的表 + 分页器,并且在进行一些小的修改后效果很好。
https://github.com/mtiger2k/pageableSpringBootDataJPA
我还需要一件事。为每一列添加一个链接以对其进行排序。
我找到了一个建议:
<td th:href="@/product(sort=($page?.sort?.getOrderFor('id')?.ascending ? 'id,desc' : 'id,asc'))" th:text="$product.id">Id</td>
所以我知道使用以下信息: org.springframework.data.domain.Page;,我有所有信息,但我无法更改它,所以它适用于我的情况。
有什么想法吗?
谢谢
【问题讨论】:
【参考方案1】:您可以接受排序属性作为参数:
/products?page=1&size=50&sortBy=name&sortDirection=ASC
在控制器中应该如下:
@RequestMapping(value = "/products", method = RequestMethod.GET)
public String list(Model model,@RequestParam int page,@RequestParam int size, @RequestParam String sortBy,@RequestParam Sort.Direction sortDirection)
Pageable page = new PageRequest(page, size, sortDirection, sortBy);
Page<Product> productPage = productService.findAll(page);
//code
希望您的要求是启用用户按产品中的不同字段排序,sortBy
将保存您需要排序的类Product
中的字段名称。
【讨论】:
以上是关于如何添加到列表的链接以使用 spring-jpa 进行排序?的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI 如何创建一个将项目添加到包含导航链接的列表的按钮
spring-jpa:PropertyReferenceException:没有找到类型 [PerfectionTask] 的属性 [保存]