Groovy是一种语言,Groovy的规则比Java少得多。Java平台仅关心使字节码得到执行。此平台不强迫您使用Java语言。只要提供了字节码,工作就会进行。Groovy代码会被编译为字节码,而对于Java平台来说,字节码是从Java代码还是Groovy代码生成的并没有任何区别。
Groovy是一种语言,其语法类似于Java,但比Java更简单。它通常被视为脚本/灵活/动态的语言,但是我不喜欢这类形容词,因为我认为它们只会令人困惑。如果说Java是一位明智的中年男子,那么Groovy就是他十几岁的儿子。Groovy具有父亲的许多特点,但是更为狂野且更为有趣。他们也可以很好地合作。 Groovy的规则比Java少得多。例如,要在Java中获得标准的"Hello World"输出,您需要编写一个类、一个具有合适参数的主方法,等等。但是在Groovy中,如果不想编写所有样板代码,您可以抛开类定义和主方法,仅编写一行代码即可打印出"Hello World"。 以下是打印Hello World的文件 Hello.groovy 的内容: println "Hello World" Java平台仅关心使字节码得到执行。同样,此平台不强迫您使用Java语言。只要提供了字节码,工作就会进行。Groovy代码会被编译为字节码,而对于Java平台来说,字节码是从Java代码还是Groovy代码生成的并没有任何区别。 以下是一个Groovy例子,它显示了Groovy对清单、映射和范围的内置支持,并证明了Groovy的简单性及其利用Java的强大功能的能力: // Print Date def mydate = new java.util.Date() println mydate //Iterate through a map def numbersMAP = ['1':'ONE', '2':'TWO'] for (entry in numbersMAP) { println "${entry.key} = ${entry.value}" } //Introducing the range def range = 'a'..'d' //Lists def numberlist = [1, 2, 3, 4, 5, 6, 7, 8] println numberlist; println "Maximum value: ${numberlist.max()}" 请注意以上代码直接使用java.util.Date ,对收集的内置支持减少了使用清单、映射和范围所需的代码。还有许多其他有趣的Groovy特性,例如闭包和简化的XML处理。您可以在groovy.codehaus.org上找到详细清单。 现在让我们来讨论如何将Groovy用于Web开发。 使用Groovy进行Web开发 大多数Java EE教程都从一个基本servlet例子开始。对于Groovy Web开发来说,您将从groovlet(在groovy中servlet的对应概念)开始。如果您在servlet中摆脱了类和doXX() 方法声明,那么剩下的内容就与groovlet很像了。以下是一个名为 Login.groovy 的groovlet例子,您需要将它置于Web应用程序的最高级目录: def username= request.getParameter("username") def password= request.getParameter("password") if (username == "java" && password == "developer") { response.sendRedirect("home.jsp") session = request.getSession(true); session.setAttribute("name", username) } else { println """
Login Invalid
Your IP has been logged > ${request.remoteHost}
""" paramMap = request.getParameterMap() println "
You Submitted:
" for (entry in paramMap) { println "${entry.key} = ${entry.value}
" } } 您可以仅创建一个简单的HTML表单,然后将此表单的行为属性发送到 action="Login.groovy"。然后将以下标签添加到web.xml: Groovy groovy.servlet.GroovyServlet Groovy *.groovy 现在只需将要求的Groovy jar 文件添加到WEB-INF/lib 目录,您的Groovy Web应用程序就准备好在任意Java EE应用服务器上运行了。 您应该已经注意到代码中没有分号,而且使用了隐式变量如request和response。其他隐式变量有context、application、session、out、sout和 html。 GSP是JSP在groovy中的对应概念。您无需使用println生成HTML;只需将Groovy代码嵌入HTML页面。本文中的例子将在提到Grails时使用GSP。 请注意,因为所有代码最终都要转换为字节码,所以groovlet和GSP能够与servlet和JSP轻松协作。因此您无需区分groovlet和GSP或者servlet和JSP。 现在让我们讨论前途无量的Grails框架。如果成功的话,Grails能够极大地改变开发Java Web应用程序的方式。Ruby on Rails对Ruby的影响,Grails也能够对Groovy实现。 相关网站推荐:专题:Groovy开发技术_51CTO.COM 官方网站:groovy.codehaus.org 来自:http://dev2dev.bea.com.cn/techdoc/200601194089.html
分享到:
相关推荐
用于soapui中,groovy语言开发的插件之一用于soapui中,groovy语言开发的插件之一
该项目为基于Groovy语言的xmake-gradle插件设计源码,包含65个文件,包括11个XML配置文件、10个Groovy脚本文件、10个PNG图片文件、6个Java源文件、5个Git忽略文件、5个Gradle脚本文件、2个properties文件和2个Lua...
使用Groovy语言开发的Gank.IO的Android客户端,遵循Material Design设计原则。
Groovy 是一种基于 Java 语言的脚本语言,运行在 JVM 中,语法与 Java 相似,但抛弃了 Java 的一些烦琐的语法规则,提供了更加简洁和灵活的编程体验。 Groovy 的特点 1. 简洁的语法:Groovy 语法简洁,减少了代码...
可以作为对Groovy语言感兴趣的计算机软件开发人员的参考书。需要的朋友们就赶紧来下载试试吧! Groovy提供类似于Java的语法结构,本地化支持映射和列表、方法、类,闭包和构造器等结构。由于具有动态弱类型,...
Groovy SDK 4.0.3 是一个针对Groovy编程语言的软件开发工具包,它包含了Groovy语言的运行环境和开发所需的各种组件。Groovy是一种动态、灵活的面向对象编程语言,它与Java语法兼容,但提供了更简洁的语法和更强的...
可以作为对Groovy语言感兴趣的计算机软件开发人员的参考书。.., Groovy是唯一能够扩展Java平台的脚本语言。Groovy提供类似于Java的语法结构,本地化支持映射和列表、方法、类,闭包和构造器等结构。由于具有动态弱...
它为Eclipse IDE带来了对Groovy语言的全面支持,包括语法高亮、代码提示、自动完成、调试器和构建工具。通过GroovyEclipse,开发者可以在Eclipse环境中舒适地编写、测试和运行Groovy代码,提高开发效率。 入门...
1. 动态类型和静态类型:Groovy语言在运行时提供动态类型特性,如动态方法分发,而在编译时则提供静态类型检查和类型推断,使得代码可以在保持灵活的同时,还能获得编译时的类型安全性。 2. Groovy的基本特性:...
标题和描述中提到的书籍为《Groovy 2 Cookbook》,这是一本专注于Groovy语言的编程参考书籍,由Packt Publishing出版。根据描述,这本书是Groovy开发者的必读书籍之一,提供了超过90个针对日常编程挑战的解决方案,...
Groovy入门经典一书是Groovy编程语言的入门教材,旨在引导Java开发人员和脚本语言新手掌握Groovy语言的基本知识和高级应用。Groovy作为一种动态脚本语言,与Java有相似的语法结构,但在功能和灵活性上远超过Java。...
标题中的“Groovy和Java相互调用1”指的是在编程时如何在Groovy语言环境中调用Java类,以及反之,如何在Java程序中调用Groovy类。这是一种跨语言交互的方式,特别是在混合使用Groovy和Java的项目中非常常见。 ...
本篇文章将深入探讨Groovy语言的关键特性和应用场景。 一、Groovy简介 Groovy是2003年由James Strachan创建的一种开源语言,它是Java虚拟机(JVM)上的一个方言。Groovy代码可以直接与Java代码互操作,因为它们都被...
5. **src**目录:可能包含Groovy语言的源代码,对于想要深入理解Groovy工作原理或者想要参与贡献的开发者非常有用。 6. **bin目录下的脚本**:每个脚本都有相应的Windows批处理文件(.bat)和Unix/Linux shell脚本...
@Deprecated Official Android Support Library 23.2 added support for Vector Drawables and Animated Vector Drawables. Please, use that. This lib is still usable, but it is no longer maintained. ...
Groovy基础教程源码涵盖了Groovy语言的各个方面,是学习和理解Groovy语言的宝贵资源。下面将详细阐述Groovy的一些核心知识点。 1. **动态类型与静态类型**: Groovy支持动态类型,这意味着变量在声明时无需指定...
文档最后对Groovy语言进行了整体的概述,强调了Groovy是一种强大、高效且富有表达力的编程语言,适合多种不同的开发场景和开发人员群体,从简单的脚本任务到复杂的系统开发,Groovy都能够胜任。文档还提供了一些基本...
Groovy是一种基于Java平台的、动态的、面向对象的编程语言,它被广泛用于脚本编写、自动化任务、测试等领域。在Groovy中发送HTTP请求是开发者经常需要进行的操作,尤其是在进行API测试或者集成第三方服务时。下面...
本书由Manning Publications出版,全面覆盖了Groovy语言的基础知识、高级特性以及在实际项目中的应用。 ### Groovy简介 Groovy是一种灵活的、面向对象的脚本语言,它运行于Java平台之上,充分利用了Java的生态系统...
1. Groovy语言规范(Groovy Language Specification) - 语法(Syntax) - 注释(Comments):Groovy支持单行注释、多行注释和Groovy文档注释,以及shebang行来指定脚本的执行环境。 - 关键字(Keywords):...