WEB开发网
开发学院软件开发Java 实战 Groovy: 用 Groovy 打造服务器端 阅读

实战 Groovy: 用 Groovy 打造服务器端

 2009-11-19 00:00:00 来源:WEB开发网   
核心提示: 这些函数可以直接用名称引用,并且可以在 Groovy 脚本中定义,实战 Groovy: 用 Groovy 打造服务器端(2),这样非常有助于它们的重复使用,Groovy 函数需要 def 关键字,建立 Groovlet 和 GSP 的实现的第一步是定义一个 Web 应用程序上下文,并更新它的相关

这些函数可以直接用名称引用,并且可以在 Groovy 脚本中定义,这样非常有助于它们的重复使用。Groovy 函数需要 def 关键字,可以将关键字想像为在脚本范围内可用的全局静态方法。因为 Groovy 是动态类型的语言,所以 def 不需要对参数作任何类型声明,def 也不需要 return 语句。

例如,在清单 1 中,我定义了一个简单的函数,它将输出一个集合的内容,而不管这个集合是 list 还是 map。然后我定义一个 list,填充它,并调用我新定义的 def。之后,我创建一个 map,并对这个集合做了同样的操作。


清单 1. 这就是 def!
def logCollection(coll){ 
 counter = 0; 
 coll.each{ x | 
  println "${++counter} item: ${x}" 
 } 
} 
lst = [12, 3, "Andy", 'c'] 
logCollection(lst) 
mp = ["name" : "Groovy", "date" : new Date()] 
logCollection(mp) 

def 不需要 return 语句,因此如果最后一行产生某个值,那么这个值由 def 返回。例如,在清单 2 中,代码定义了一个 def,它返回传递进来的变量的名称。我可以编写它,让它带有或者不带 return 语句,得到的结果是相同的。


清单 2. 在 def 中 return 语句是可选的
def getJavaType(val){ 
 val.class.getName() 
} 
tst = "Test" 
println getJavaType(tst) 

在编写简单的脚本时,def 关键字会非常好用。您很快就会看到,在开发 Groovlet 时,这个关键字也会派上用场。

Groovlet 和 GSP

使用 Groovlet 和 GSP 的前提条件相当简单:需要一个 servlet 容器,以及最新、最伟大版本的 Groovy。这些框架的好处是它们通过一个 web.xml 文件将所选模式的所有 URL 映射到特定的 servlet。因此,建立 Groovlet 和 GSP 的实现的第一步是定义一个 Web 应用程序上下文,并更新它的相关 web.xml 文件。这个文件将包括特定的 servlet 类定义以及它们对应的 URL 模式。

上一页  1 2 3 4 5 6 7  下一页

Tags:实战 Groovy Groovy

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接