最近写了一个简单的分页查询如下
输入用户名和密码查询
实现效果如图
queryList中的文件代码
def adminInstance=new Admin(params)
//如果没有输入内容则返回
if(adminInstance.userName.trim()==”"&&adminInstance.userPass.trim()==”"){
flash.message=”${message(code:’query.error’,default:’query error!!’)}”
return
}else{
//创建queryList的查询对象
def adminQueryList=Admin.createCriteria()
params.max = params.max ? params.int(‘max’) : 5
//创建查询条件
def queryResult=adminQueryList.list(max:params.max,offset:params.offset){
like(“userName”,”%”+params.userName+”%”)
or{
like(“userPass”,”%”+params.userPass+”%”)
}
//根据id倒叙排列
order(“id”,”desc”)
}
def adminQuerySize=Admin.createCriteria()
def queryResultSize=adminQuerySize{
like(“userName”,”%”+params.userName.trim()+”%”)
or{
like(“userPass”,”%”+params.userPass.trim()+”%”)
}
projections{ rowCount() }
}
render(view:”queryList”,model:[adminInstances: queryResult,queryResultSize:queryResultSize[0],params:params])}
gsp中的分页为
<div class=”list”>
<g:each in=”${adminInstances}” status=”i” var=”adminInstance”>
<tr class=”${(i % 2) == 0 ? ‘odd’ : ‘even’}”>
<td><g:link action=”show” id=”${adminInstance.id}”>
${fieldValue(bean: adminInstance, field: “id”)}
</g:link></td>
<td>
${fieldValue(bean: adminInstance, field: “userName”)}
</td>
<td>
${fieldValue(bean: adminInstance, field: “userPass”)}
</td>
<td width=”140px”><g:link action=”show”
id=”${adminInstance.id}”>查看</g:link> | <g:link action=”edit”
id=”${adminInstance.id}”>编辑</g:link> |
<g:link url=”delete?id=${adminInstance.id}” onclick=”return confirm(‘您确定删除吗?’)” >删除</g:link>
</td>
</tr>
</g:each>
</div>
<div class=”paginateButtons” style=”width: 100%”>
<div style=”float: left; width: 300px”>
<g:paginate total=”${queryResultSize}” params=”${params}” ></g:paginate>
</div>
<div style=”float: right; width: 200px;”>
</div>
</div>
</div>
分享到:
相关推荐
在Grails这个基于Groovy的敏捷开发框架中,实现分页功能对于任何Web应用程序都是至关重要的,特别是当处理大量数据时。Grails提供了一些内置的支持,但如果你需要在自定义的控制器和视图中实现分页,那么就需要遵循...
**Grails框架数据查询** Grails是一个基于Java平台的开源Web应用框架,它采用Groovy语言,提供了MVC(Model-View-Controller)架构模式,旨在简化开发过程,提高开发效率。在Grails中,数据查询是核心功能之一,...
Grails框架中的GORM(Groovy Object Relational Mapping)是利用Groovy语言的优势来简化数据库操作的一套对象关系映射技术。GORM支持多种查询方式,提供了类似于Hibernate的查询能力,并且由于Groovy语言的动态特性...
本篇教程将介绍如何在Grails应用中创建一个根据产品编号进行组合查询,并以分页形式展示查询结果的功能。 首先,我们关注用户界面部分。在`list.gsp`页面上,我们需要添加一个“查找产品编号”的链接,用于触发查询...
Grails 是一个基于 Groovy 语言的开源Web应用程序框架,它构建在Java平台之上,旨在简化开发过程并提高生产力。Grails 的设计深受Ruby on Rails的影响,提供了MVC(模型-视图-控制器)架构模式,允许开发者快速构建...
Grails提供了方便的分页API,可以轻松地在控制器(Controller)中实现分页逻辑,并在视图(View)中展示结果。在这个例子中,你可能已经掌握了如何实现这一功能。 4. **数据库管理**:`contact_dev.sql`文件可能是...
Grails在IT行业中尤其受到重视,因为它能够帮助开发者快速搭建并部署基于MVC模式的应用程序。 在入门Grails之前,首先需要了解如何下载并安装这个框架。Grails官方提供了各个版本的下载链接,通常包括zip压缩包和可...
《Grails权威指南》是一本全面深入探讨Grails框架的专著,旨在帮助读者掌握这一强大的Web开发工具。Grails是一种基于Groovy语言的开源框架,它为构建现代、高效的应用程序提供了简洁高效的解决方案。本指南针对不同...
例如,可以创建一个`student_list.gsp`页面,展示所有学生信息,并通过AJAX实现无刷新的查询和分页功能。 五、查询功能与安全性 查询功能通常通过控制器(Controllers)实现,它们接收用户的请求,调用服务层...
- 安装完成后,确保设置`GRAILS_HOME`环境变量,并将其路径添加到系统的`PATH`变量中,确保这两个变量都在同一级别(用户级或系统级)。 - 打开命令行,输入`grails`,如果显示帮助信息,表明Grails已成功安装。 ...
- 通过本书的学习,读者可以掌握Grails的基本用法,并具备进一步深入学习的能力。 - **展望**: - 随着Groovy和Grails的不断发展,未来将会有更多先进的特性和工具加入其中。 - 企业级应用领域对快速开发的需求...
3. Controller:控制器层接收用户请求,调用模型进行业务处理,并决定视图如何显示结果。 三、Grails命令行工具 Grails提供了一套强大的命令行工具,用于快速创建项目、生成控制器、领域类、服务等。例如,`grails...
解压并导入到Eclipse中,可以进一步增强Grails的开发体验。 通过以上步骤,你可以在Eclipse中舒适地开发Grails项目,利用IDE的强大功能提升开发效率。Grails的MVC架构和自动化特性,结合Eclipse的插件支持,使得...
Grails是一款基于Groovy语言的开源Web应用框架,它提供了快速开发、简洁代码以及高度可扩展性的特性。在Grails的开发过程中,掌握一些常用的快捷键可以极大地提高开发效率。以下是一些Grails开发中常用的关键操作和...
《Grails从入门指南(第二版)》是一本专为初学者设计的全面教程,旨在帮助读者快速掌握Grails框架的基础知识和高级特性。Grails是一个基于Groovy语言的开源Web应用开发框架,它简化了Java平台上的开发过程,提供了...
《使用 Grails 快速开发...同时,也将具备进一步探索Grails高级特性的基础,如插件系统、国际化、安全性和测试等。对于熟悉HTML、Web开发基础和Java或Groovy语言的开发者,Grails提供了一个高效且有趣的Web开发新选择。
此外,书中还介绍了控制器的使用方法、Grails的高级视图技术GSP、以及如何在Grails项目中使用Ajax技术来增强用户体验。 除了上述内容,本书还探讨了Grails的高级特性,例如安全性、缓存和事务管理等。并且,由于...
下载并安装最新版本的Grails,然后配置好环境变量。Grails的环境配置通常包括设置GRAILS_HOME路径以及将其添加到系统的PATH变量中。 **2. 创建新项目** 使用Grails命令行工具创建一个新的Grails应用,例如`grails ...