想要做一个考试系统,随机抽取试卷题目,原来的代码是:
java 代码
- def artlist = Article.findAll("from Article order by rand()")
- [ article:artlist ]
发现显示出来的每个题目都是带一个[],才知道原来选择出来的是一个List。
后来把代码修改为:
java 代码
- def artlist = Article.findAll("from Article order by rand()")
- def art = null
- if(artlist!=null){
- art = artlist.get(0)
- }
- [ article:artlist ]
本来想在by rand()后面加上limit 1,但是加上后出错,因为知道Grails使用的是Hibernate类似的,就去寻找Hiberanate的createQuery这样的方法,但是只有一个executeQuery,而且返回的也是List,没有maxResults,setFirstResult的方法,很麻烦。
后来查手册才发现,原来find方法是返回第一个记录,所以代码就改为:
java 代码
- def artlist = Article.find("from Article order by rand()")
- [ article:artlist ]
但是这样做感觉效率可能会比较低,而且如果要找随机的5条就比较麻烦,因为可能会有重复的,不知道有没有更好的解决方法。
分享到:
相关推荐
这个例子实现了用grails 连接mysql 数据库,并且把内容显示出来,可以增删除改,下载这个例子后大家要把jdk tomcat grails环境搭好,然后用grails run-app来执行,也可以用其它的开发工具,本人用的是netbeans
详细讲解grails开发环境配置。 详细讲解grails连接mysql数据库,crud开发
Grails Grails Grails Grails Grails
Grails从入门指南(第二版)
Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南
从输入 grails create-app 的那一刻,你就可以看出这不同于你平时的 Java 开发项目。每一 种事物在 Grails 中都有其相应位置的这一事实——每一个新增的组件已经有一个相应的位 置正等着它——让 Grails 有一种奇怪...
grails-2.1.zip.001
Grails1.1中文文档
grails+Xfire webservice
比较详细的grails中文文档,有所有命令行解释,还有grails的一个完整的学习过程的资料
Grails入门指南中文pdf -- 针对grails1.0.4更新,附加idea8 开发grails的流程
在学习任何东西之前,最重要的是培养兴趣,Groovy世界最耀眼的技术之一--Grails相信大家早已耳闻,我将通过Grails实战系列文章 向您展现Grails的迷人风采,使您感受到Grails的魅力,以至疯狂地爱上Grails,并坠入...
Grails项目的应用越来越多,而对于初学者来说,在Eclipse下搭建Grails项目是一个难题,这个文档将教会你如何搭建Grails项目,希望对你有所帮助。
grails 用户登录的例子,必须登录后才可以查看信息,并且只有admin用户才可以创建用户,此例子,只要将grails 的环境配好,就可以用了,用的是自带的数据库,如果需要mysql 可以更改。
grails入门指南实例,grails+mysql,实现用户登陆实例
Grails_开发简介,本文介绍如何使用Oracle JDeveloper 作为IDE 来开发Grails 应用程序。此外,您还在学习开发Grails 应用程序的过程中大概了解Groovy 的一些概念。
Grails 中文 参考手册
grails3.2.8 part1
Grails是一个full-stack框架,它借助于核心技术与相关的插件(plug-in)来解决Web开发中方方面面的问题,其中包括: 易于使用的基于Hibernate的对象-关系映射(ORM)层 称为Groovy Server Pages (GSP)的表现层技术 ...