Grails学习笔记1
1. 简介如今的Java Web开发对于需求来说已经变得过于复杂。当今众多Java领域的Web开发框架不仅使用复杂,而且并没有很好的遵循Don’t Repeat Yourself(DRY)原则。
像Rails,Django和TurboGears这样的动态框架在Web开发领域开辟了一条新的道路,Grails基于这些概念之上,采用动态方法减小了Java平台上进行Web开发的复杂度,不过与那些框架不同的是,Grails是构建在Spring和Hibernate等Java已有的技术之上的。
Grails是一个full-stack框架,它借助于核心技术与相关的插件(plug-in)来解决Web开发中方方面面的问题,其中包括:
[*]易于使用的基于Hibernate的对象-关系映射(ORM)层
[*]称为Groovy Server Pages (GSP)的表现层技术
[*]基于Spring MVC的控制器层
[*]构建于Gant 上的命令行脚本运行环境
[*]内置Jetty服务器,不用重新启动服务器就可以进行重新加载
[*]利用内置的Spring 容器实现依赖注入
[*]基于Spring的MessageSource核心概念,提供了对国际化(i18n)的支持
[*]基于Spring事务抽象概念,实现事务服务层
借助于功能强大的Groovy动态语言和领域特定语言(Domain Specific Language,DSL),以上那些特性变得非常易用。
这篇文档会向你介绍如何使用Grails框架来搭建Web应用程序。
2. 安装Grails
a. 安装jdk,并设置环境变量
b. 从Grails的官方网站下载最新的Grails(http://www.grails.org/Download),解压
c. 添加Grails的环境变量GRAILS_HOME
d. 将GRAILS_HOME添加到path中
输入grails -v,看到如下即表示安装成功
Welcome to Grails 1.3.6 - http://grails.org/Licensed under Apache Standard License 2.0Grails home is set to: D:\Utils\grails-1.3.6
3. 编写第一个Grails应用程序
刚接触Grails,先编写一个简单的用户注册的CRUD吧。
首先,为自己的应用程序起一个名字:register,打开cmd窗口,输入:
grails create-app register
在C盘的用户文件夹下(C:\Documents and Settings\XXX)看到新建的应用程序,Grails会设计一个标准的目录结构。
OK,因为需要注册用户,所以需要建立一个实体,在cmd窗口进入刚刚新建的引用程序目录,输入:
grails create-domain-class User
进入register\grails-app\domain和register\test\unit目录下,可以看到Grails为生成的两个类,这里先使用第一个目录下的类。
进入register\grails-app\domain目录下面,可以看到刚才新建的User类,打开它,Grails为你生成了如下代码:
package registerclass User {static constraints = {}}
ok,现在来完善她,为她添加几个属性,不熟悉Groovy的朋友需要先了解一下Groovy。
package registerclass User {static constraints = {}def namedef agedef passworddef repassword}
在这里,不需要Getter和Setter,不需要CURD的实现,Grails都会实现,继续往下操作。
完成了实体以后,需要构建控制器和视图,输入
grails generate-all register.User
进入register\grails-app\controllers和register\grails-app\views,Grails把控制器和视图都生成了。
最后,运行服务器,Grail自带了服务器和数据库的,由于其底层使用了hibernate和spring,因此,grails会自动为创建数据库。
输入:
grails run-app
启动服务器,当你看到:
Server running. Browse to http://localhost:8080/register
你的服务已经启动,打开浏览器,输入上述地址,就可以看到这个简单的应用程序了。
页:
[1]