作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想首先声明,我知道已经有一个排序函数,并且可以使用以下函数调用它:
http://localhost:8080/api/person?sort=name,ASC
但是,由于我依赖多个域,所以目前无法使用这种排序类型。由此我决定创建一个自定义排序参数,如下所示:
http://localhost:8080/api/person?ordering=name
然后,我决定查看我的存储库以创建一个自定义 JPQL,该 JPQL 可用于在调用上面的 URL 时对我的值进行排序:
repo 方法:
@Query("SELECT p FROM DePerson p, DeClass c, DeSchool s" +
"WHERE p.personId = c.id " +
"AND p.schoolId = s.id " +
"ORDER BY :ordering")
Page<DeSiteUser> orderingAll(@Param("ordering") String ordering, Pageable pageable);
服务方式:
Page<DePerson> newPage = repository.orderingAll(ordering, pageable);
List<DePerson> personList = newPage.getContent();
for (DePerson person: personList ) {
result.add(convertDTO(person));
}
return new PageImpl<>(result, pageable, page.getTotalElements());
从此我调用了它,现在得到了这个错误:
There was an unexpected error (type=Internal Server Error, status=500).
could not extract ResultSet; nested exception is org.hibernate.exception.GenericJDBCException: could not extract ResultSet
有两个问题想请教一下。 1. 这是使用 ORDER BY 生成自定义排序参数的正确途径吗? 2. 为什么我会收到错误消息。谢谢。
最佳答案
这行看起来错误:
AND su.schoolId = s.id
您的请求中没有“su”。您指的是 c 而不是 su?
关于java - 使用 ORDER BY 传递到 URL 的用于排序的自定义参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62387111/
我是一名优秀的程序员,十分优秀!