• 测试技术
  • 博客
  • 视频
  • 开源
  • 论坛
  • 沙龙
  • 下载
  • 杂志
  • 招聘

字号: | 推荐给好友 上一篇 | 下一篇

Grails 入门: 构建您的第一个 Grails 应用程序

发布: 2008-6-30 13:47 | 作者: 不详 | 来源: 领测软件测试网编辑整理 | 查看: 51次 | 进入领测软件测试网论坛讨论

领测软件测试网 软件测试技术门户_ZL:E%_o3b

软件测试技术门户T|-Z`s a%J

软件测试技术门户'u'Q*ZiD
Java 开发人员首先会注意到的是,这么少的代码可以实现多少功能。以 list 动作为例。起重要作用的是最后一行。Grails 将返回一个 hashmap,其中只有一个名为 tripList 的元素。(Groovy 方法的最后一行是一个隐式的 return 语句。如果您愿意,也可以手动地输入单词 return)。tripList 元素是 Trip 对象的一个 ArrayList,Trip 对象是通过 Trip.list() 方法从数据库中拉出的。通常该方法将返回表中的全部记录。它上面的一行代码表示 “如果 URL 中提供了一个 max 参数,那么使用它来限制返回的 Trip 的数量。否则,将 Trip 的数量限制为 10”。URL http://localhost:8080/trip-planner/trip/list 将调用这个动作。例如,http://localhost:8080/trip-planner/trip/list?max=3 显示 3 个 trip,而不是通常的 10 个。如果有更多的 trip 要显示,Grails 会自动创建上一页和下一页的分页链接。

.uCcO]X#k 软件测试技术门户 qAS"F u?bR&^ [

那么,如何使用这个 hashmap?看看 grails-app/views/list.gsp,如清单 4 所示:软件测试技术门户4G!Jo%i)\LF

软件测试技术门户,g.e3f$TTq


2TU:Y/C g)j6~清单 4. list.gsp软件测试技术门户-r}g |V/\
               
b0j7w.{:Z].w<g:each in="${tripList}" status="i" var="trip">
O ~3Q.k4aC\ @_  <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">软件测试技术门户 RhO)}W9G knD7wq
    <td>软件测试技术门户.e$u9Wo8N4]F
      <g:link action="show" id="${trip.id}">${trip.id?.encodeAsHTML()}</g:link>软件测试技术门户"^k z6w SW tAs
    </td>软件测试技术门户w9B"n0X`5w#xz
  </tr>软件测试技术门户 |["d/E!@'}bd[/T
</g:each>软件测试技术门户?t:FFZ@ q
 

{E O ~K-xsvC 软件测试技术门户:h)jF.Ez-\{*Vt8Z {


a3ZO2}0A"ef$B(Rlist.gsp 主要是一些老式 HTML 加上少量 GroovyTagLib。以 g: 为前缀的就是 GroovyTag。在清单 4 中,g:each 遍历 tripList ArrayList 中的每个 Trip,并构建一个格式良好的 HTML 表格。软件测试技术门户"N0ZNy$Bc

软件测试技术门户w+E