groovy简单的了解

    Groovy 是一种基于JVM的简单开发语言,简化了java的语法结构,既可以使用面向对象思想,又可以纯脚本开发.具有闭包和动态语言中的其他特性,Groovy 语法与Java 语言的语法很相似,可以说是Java 语言的一种更加简单、表达能力更强的变体.

优点:

1)库:Groovy可以调用强大的Java所有的库

2)框架:Grails,可以利用JAVA已有的框架如SPRING HIBERNATE

3) 流行程序: Google App Engine 云计算平台

4) 语法:动态的脚本语言,支持闭包和自己封装的一些简单语法,大大减少代码量

缺点:

1) 就是只能在JVM上运行
 

定义变量

def  变量名 = 变量

例如 def  str = "张三"  单引号和双引号都可以

def可以定义所有的基本数据类型 def i = 5  但是有一个不行 Boolean类型(当然也有更深层次的解释,需要的可以自行研究)

def list = [] 定义空的list集合

def array = [ ] 

def  map = [ : ] 定义map

 

实体类domain

在实体类中主要有五个部分吧

一.static mapping = { 定义表名 版本控制等}

二.static constraints = { 约束条件}

三.static hasMany = { 一对多等关系}

四 字段

五.实体类查询方法

控制层controller

控制层的名称要和实体类名称以及视图中文件夹的名称相同;

控制层中主要方法的名称要和是同gsp的文件名相同

定义方法的方式

def  list(方法名) = {  }

引入Service

def  service名称

返回视图的数据 return [project:project], []中第一个是在视图中接收的对象,第二个是方法的对象,如果有多个对象要返回到视图的话用逗号分隔开.

render关键字

循环语句

Groovy支持传统的Java的for(int i=0;ifor(int i :array)两种形式。另外还支持for in loop形式,支持迭代范围、列表、Map、数组等多种形式的集合。

条件语句

//Java 写法 if (person!= null){ if (person.Data!=null){ println person.Data.name } }

//Groovy println person?.Data?.name

闭包

闭包,英文叫Closure,是Groovy中非常重要的一个数据类型或者说一种概念了。闭包,是一种数据类型,它代表了一段可执行的代码。

def aClosure = {//闭包是一段代码,所以需要用花括号括起来..

String param1, int param2 -> //这个箭头很关键。箭头前面是参数定义,箭头后面是代码

println"this is code" //这是代码,最后一句是返回值, //也可以使用return,和Groovy中普通函数一样 }

视图view

你可能感兴趣的:(groovy简单的了解)