findAll() HQL 不返回 grails 中的分页列表

2024-02-22

我正在开发一个 grails 应用程序,在此我必须在 list.gsp 上应用过滤器框。当我使用以下查询(在我的服务中)进行过滤时,我得到分页列表 :

    def clientCriteria = TripOrder.createCriteria()
        def searchResults = clientCriteria.list(max: params.max, offset: params.offset, sort: params.sort, order: params.order){
            ilike("origin", "${searchFor}%")
        }
        println searchResults.getTotalCount()
        [searchResults: searchResults, searchResultSize: searchResults.getTotalCount()]

但我的问题是,当我使用 findAll 时,我无法获取分页列表,查询如下:

def searchResults =  TripOrder.findAll("from TripOrder as t where t.status.status=:status", [status: searchFor], [max: maximum, sort: params.sort, order: params.order])

            println searchResults.size()

            [searchResults: searchResults, searchResultSize: searchResults.size()]

Note:由于某些原因,我必须使用 findAll() HQL 而不是条件查询。

以上结果仅提供等于 max 的列表数量,而不是提供分页列表.

请为我提供使用 findAll() 获取分页列表的解决方案。

Thanks.


根据您的评论,您可以这样做,您会得到PagedResultList

def results = TripOrder.createCriteria.list(params) {
    customer {
       ilike 'firstName', "%$searchFor%" 
    }
}

assert results.size() != results.totalCount

如果你想坚持的话,它基本上会触发另一个对 TotalCount 的查询findAll或类似 findAll 而不是 criteria 的东西,那么您可以使用更好的替代品DetachedCriteria/where query它按需延迟执行查询。同样,您将无法在第一个查询中获得总计数。你必须为此解雇另一个人。

def query = TripOrder.where {
    customer.firstName =~ searchFor
}

//Query executed only when list() is called
def results = query.list( params )

//Only executed when count() is called
def totalCount = query.count()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

findAll() HQL 不返回 grails 中的分页列表 的相关文章

  • Javassist 增强部署失败

    我遇到了底部堆栈跟踪中指定的错误this https stackoverflow com questions 26220232 hibernate lazy loading proxy gorm static apis instanceof
  • 如何在android中的网格视图中进行分页? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何在 android 中对 gri
  • 从控制器传递 gsp 参数

    我如何通过不是域类实例的控制器将参数传递到groovy服务器页面 您将参数放入返回给 GSP 的模型对象映射中 例如 def index def hobbies basketball photography render view inde
  • 在 Grails 下如何防止异常导致事务回滚?

    我的 Grails 服务遇到一个问题 即与事务无关的吞没异常会导致事务回滚 即使它与域对象的持久性无关 在我的服务中 我有一些类似的东西 updateSomething domainObj def oldFilename domainObj
  • Chrome 和 JSESSIONID

    chrome 出现以下问题 我已经在服务器上运行 Grails 1 3 7 应用程序 我注意到 当我从 Chrome 请求静态内容 例如非动态 html 文件 时 Chrome 会创建两个 JSESSIONID Cookie 第一个是登录窗
  • 如何在 Groovy 中的 JSON Converter 方法中保留字母大小写?

    我正在尝试将 groovy 对象解析为 JSON 属性名称不遵循正确的驼峰式大小写形式 class Client String Name Date Birthdate 当我使用这个时 Client client new Client Nam
  • 如何使用 Spring Resource.groovy 正确注入 Grails 服务

    使用 Grails 2 2 1 我定义了以下 Grails 服务 package poc class TestService def helperService class HelperService 我已经用过TestService如下
  • 自定义帖子 wp_query 的分页

  • 空白约束和空约束之间的区别

    空白约束和空约束有什么区别 我有以下课程 class Task String title String notes TekUser assignedTo Date dueDate TekEvent event static constrai
  • 在 Grails 中使用 AOP 不适用于服务

    我使用 Grails 2 2 3 并在 grails app conf spring resources groovy 中键入以下代码 beans xmlns aop http www springframework org schema
  • grails 中的 log4j:如何登录文件?

    我的 grails config groovy 中有这个 log4j 配置 log4j error org codehaus groovy grails web servlet controllers org codehaus groovy
  • Grails + Spring Security:无法登录

    我刚刚开始学习Grails和Spring 我已经按照官方教程创建了一个登录系统 但我无法登录 用户名或密码不匹配 我知道 90 的情况下这是由于双重编码或多个数据源 这也导致双重编码 造成的 但我也没有这样做 class BootStrap
  • 无法创建“DependencyManagementReportTask”类型的任务。 Gradle 新手

    我是 Grails 3 和 Gradle 的新手 我正在努力将应用程序 2 4 4 更新到 Grails 3 2 8 通过升级 我想从头开始构建一个插件 我无法使用声明依赖项的标准方法将其包含到项目中 我正在尝试使用 gradle 构建 g
  • Grails transactionManager 运行时出现异常

    当编译一个grails v2 3 3项目运行项目时出现以下错误Netbeans 7 4 Loading Grails 2 3 3 Configuring classpath Configuring classpath Environment
  • UrlMapping 和文件扩展名

    我有以下 url 映射 name a a file controller attachment action get 我想像这样使用它
  • 模拟 Spock 中的超类

    如何对 Spock 中具有超类的类进行单元测试 该超类调用来自其超类的方法调用 或者如何模拟 Spock 中的超类 Ex class Bar def method1 parm1 Method actions class Foo extend
  • 如何在GEB中选择内部元素的文本?

    我有以下场景 div ul class select2 results style width 400px li class select2 results dept 0 select2 result select2 result sele
  • 如何检测 URL 映射中的片段标识符?

    In a Grails http www grails org 项目我正在尝试根据是否存在来映射 Url片段标识符 http en wikipedia org wiki Fragment identifier 片段标识符不是 URL 的一部
  • 使用 Coldfusion 分页

    是否可以仅使用一个查询在 Coldfusion 中分页并显示页数 我的理解是 您显然可以使用一个查询进行分页 但您需要一个额外的查询来创建页面 这是为了计算结果总数 currentPage 1 resultsPerPage Offset i
  • 根据环境执行特定的Geb测试

    我正在 Grails 项目中执行一组规范测试 当我在本地时 我需要执行一组特定的规范 当我运行预生产环境时 我需要执行另一组规范 我当前的配置正在同时执行两个环境的所有规范 这是我想避免的 我有多个环境 已在 GebConfig 中配置 e

随机推荐