grails


简介
Grails是一套用于快速Web应用开发的开源框架,它基于Groovy编程语言,并构建于Spring、Hibernate和其它标准Java框架之上,从而为大家带来一套能实现超高生产力的一站式框架。
内容
Ruby on Rails开创了将一门强大的编程语言和一个坚持己见、提倡用通情达理的默认设置代替复杂配置的框架进行创造性结合的先河。然而,还有许多组织并没有做好 从Java的安全保护伞下走出的准备,也没有打算放弃他们目前在Java上的投入。而Grails的出现,使得在一个以Java为中心的环境中实现同等生 产力的想法成为可能。

目 录

1插件

2特点

3示例

1插件

grails的 插件系统也是其亮点之一。首先,和rails,django等web框架类似,基于 微内核的思想, 插件(可重用模块)是框架的一等公民。grails除了核心模块以外的功能几乎都是通过 插件方式实现的。实际上,一个grails 插件和一个grails应用基本是完全一样的,同样可以使用grails run-app命令来运行。区别仅在于一个 插件的根目录下需要提供一个fooplugin.groovy文件,提供插件的一些描述信息。
grails 插件基本可以做任何事情,grails社区已经提供了各式各样的插件,发布在grails官方插件源上。查看现有的官方 插件,可以执行下面的命令:
grails list-plugins
安装 插件可以执行以下命令:
grails install-plugin 插件名或插件路径
卸载 插件可以执行以下命令:
grails uninstall-plugin 插件名或者插件路径

2特点

如今的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 上的命令行 脚本运行环境,内置Tomcat服务器,不用重新启动服务器就可以进行重新加载
  • 利用内置的Spring 容器实现依赖注入
  • 基于Spring的MessageSource核心概念,提供了对国际化(i18n)的支持
  • 基于Spring 事务抽象概念,实现事务服务层
  • 借助于功能强大的Groovy 动态语言领域特定语言(Domain Specific Language,DSL),以上那些特性变得非常易用。

3示例

是一个被用烂了而又经典的例子,在创建 应用程序之前,先熟悉一下grails命令的使用(确保grails环境已配置好)。
grails command name
我们为了创建一个Grails应用,需要输入的命令是create-app
grails create-app helloworld
这样就在 当前目录下创建了一个名为helloworld(即我们的 应用程序名)的文件夹,在这个文件夹中包含了我们这个项目的整个 文件目录,可以使用如下命令进入这个目录中查看:
cd helloworld
为了完成这个经典的Hello World示例,我们需要运行create-controller命令,您先进入CMD命令行并执行:
grails create-controller hello
运行该命令后会在grails-app/controller目录下创建一个名为HelloController.groovy的控制器 控制器主要用来完成对Web请求的处理,我们稍微修改一下控制器的内容,使它能够在页面上输出"Hello World!"的字样,代码如下:
class HelloController { def world = { render "Hello World!" }} 控制器已经完成了,接下来要使用run-app来启动内置的jetty服务器运行刚刚创建的helloworld程序
grails run-app运行后会在 8080端口(默认,可以使用-Dserver.port来指定端口)启动服务器,然后在 浏览器中输入http://localhost:8080/helloworld来启动 应用程序.

网站应用程式架构

ASP.NET
ASP.NET MVC BFC DotNetNuke MonoRail
Umbraco
ColdFusion
ColdSpring Fusebox Mach-II Model-Glue
onTap on Wheels
Common Lisp
ABCL-web blow BKNR SymbolicWeb
UnCommon Web
C++
CppCMS
Java
Apache Struts AppFuse Flexive GWT
Grails Vaadin ItsNat JavaServer Faces
Makumba OpenXava Reasonable Server Faces RIFE
Restlet Seam Spring Stripes
Tapestry WebWork Wicket ZK
Perl
Catalyst Interchange Mason
PHP
Agavi Akelos CakePHP Chisimba
CodeIgniter Garden Horde Kohana
Kolibri KumbiaPHP Midgard Orinoco Framework
PHPonTrax Seagull Simplicity Symfony
WASP Yii Framework Zend Zoop
Python
Bottle CherryPy Django Flask
Gork Pyjamas Pylons Pyramid
Tornado TurboGears web2py Zope
Ruby
Ruby on Rails Merb Sinatra
Scala
Lift
Smalltalk
AIDA/Web Seaside
Other languages

Application Express Fusebox OpenACS Yaws
HAppS SproutCore
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值