`
jimmy.shine
  • 浏览: 392952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Grails之我见

阅读更多
在China-pub上看到《Grails权威指南》作为强力推荐的书,终于忍不住,要一探这个基于被Java SE 6支持的脚本语言Groovy之上的Rails框架了。恰逢infoq推出了《Getting Started with Rails》中译本的书推出,赶快一睹为快。
Grails的版本进化得太快,我是读着原程序看完的,因为无法运行,在Grail的网站上已经找不到grails 0.5的版本了(不知道是不是我老了,眼睛不好了:P )。实在不习惯于使用notepad之流的东西来写代码(我已经被eclipse彻底的腐化了),下了一个Grails for eclipse的插件,结果这东西让我痛不欲生,代码照着书上的写上去,却无法运行,注释了,重新来一遍,居然又好了,极度不稳定。不过错误,倒是让我意外的了解了部分grails框架的东西。
闲话少说,还是谈一谈个人感受。
以下是我的总结:
一、Rails框架
    rails框架的思想就是敏捷开发。主要信奉的原则“规约重于配置”(convention over configuration)。

二、Grails
   grails是建立在Groovy基础上的一种Rails框架。Groovy较之其它脚本语言的优势在于可以直接调用Java类。
   Grail框架使用以下:
    Hibernate--->提供ORM映射
    Spring   --->提供MVC以及依赖注入
    SiteMesh --->提供界面布局管理

三、Grails开发及特点
  1. 建立项目 grails create-app
  2. 进入项目
  3. 建立领域类 grails create-domain-class
     (1)对于对象的属性的定义
     (2)对于对象与对象之间的关系定义
   注:类似于Hibernate或JPA使用Annotation进行关系映射
     (3)执行验证
   注:类似于struts的validateForm做的工作
  4. 建立控制器 grails create-controller
     (1)对态Action生成,生成CRUD
           scaffold  = true
     (2)通过控制器中定义的Action来导航
   注:类似于Struts的xml配置文件中的method
     (3)通过解析URL来实现导航判断,即进入哪个
     (4)通过重载默认值来定制
     (5)对象的保存方法(ORM方法的自动织入)
   可以在对象上直接调用 save()等方法
   注:类似于JPA中使用EntityManageer来管理类,加载于对象上,可以通过AOP来实现,           不知道Grails是不是这样做的。
     (6) 错误消息提示
   注:类似于Struts中的error message

总结:从Grails的框架来看,其通过规约来实现了一系列的常用的操作,从目前来看,要将grails用于商用,还是不太实际,从稳定性、健壮性各个方面(有空去看一看grails框架的bug列表),但是其架构的理念可以值得我们去借鉴。

 
分享到:
评论
10 楼 webster 2008-04-29  
在Development时候Grails把Cache给关掉了,为的是任何在调试时候或修改时候的改动都能直接由改动反映出来,要加快Grails的运行可以有多种方法,一个要保证在Production时(默认的)启用Cache,第二要合理设计数据库(Convention非常的不靠谱),第三要为虚拟机分配一个大的内存(>512M)
9 楼 agile_boy 2008-01-09  
另外lz,下载grails任意版本的url是:http://dist.codehaus.org/grails/
你只需要下载*-bin*的压缩包就可以了。
8 楼 agile_boy 2008-01-09  
呵呵,感觉lz的grails已经入门了,不过要想更深入的话,就需要多加深一下Groovy和Hibernate/Spring等了。
不过lz说的版本更新太快,确实是存在问题的,不过随着1.0的即将发布,我相信变化就应该没有这么神速了
《权威指南》的代码,我也希望在1.0发布以后,能将其示例移植到1.0的版本上,面对再误导大家,呵呵。
7 楼 dreampursuer 2008-01-09  
感觉groovy对于进行某些配置方面的工作非常方便,对于java者学习难度也很低,grails使用起来好像也很简单,但对其运行速度目前还是有点问题,主要比较了struts2,因此要在production环境中运行还是有段距离。
6 楼 jimmy.shine 2008-01-09  
Groovy是java的希望,又是所谓的炒作!
就像是学了几天的电脑,就说要做个操作系统一样。
5 楼 maku 2008-01-08  
这几天老有人说java快到头了,如果真是这样的话。groovy就是
它的希望。
4 楼 Vstar 2008-01-08  
觉得Rails 2.0把Rails变得复杂了,去掉了原来的scaffold,开发的时候很是不顺手。昨天试了试Grails 1.0 RC3,感觉很不错,尤其是模型与数据库同步、国际化支持等。
3 楼 诺铁 2008-01-08  
不错。现在我们的大型应用,配置实在是太多了,其中大部分是完全闭着眼睛写的东西,完全可以用规约来解决。
我也是看了那本INFOQ的电子书,照着做了一把,感觉还可以。
2 楼 01071405 2008-01-08  
我现在也在看关于Groovy方面的东西,不知道有什么可以推荐的
1 楼 wenson 2007-12-25  
不知道山風小子和agile_boy看了之后會是什么樣的想法?

相关推荐

    Grails Grails Grails

    Grails 是一个基于 Groovy 语言的开源Web应用程序框架,它构建在Java平台之上,旨在简化开发过程并提高生产力。Grails 的设计深受Ruby on Rails的影响,提供了MVC(模型-视图-控制器)架构模式,允许开发者快速构建...

    Grails权威指南 Grails权威指南

    《Grails权威指南》是一本全面深入探讨Grails框架的专著,旨在帮助读者掌握这一强大的Web开发工具。Grails是一种基于Groovy语言的开源框架,它为构建现代、高效的应用程序提供了简洁高效的解决方案。本指南针对不同...

    Eclipse下搭建Grails项目

    【Grails项目搭建详解】 Grails是一个基于Groovy语言的开源Web应用框架,它简化了开发过程,尤其适合快速构建动态网站。在Eclipse中搭建Grails项目可能相对复杂,但通过以下步骤,即使是初学者也能顺利进行。 1. *...

    grails-用户手册

    《Grails用户手册》 Grails,作为一个基于Groovy语言的开源Web应用框架,深受开发者喜爱,它简化了Java开发的复杂性,提供了强大的MVC(Model-View-Controller)架构,以及丰富的插件系统。这份用户手册将帮助你...

    Grails开发之(Rest教程).pdf

    标题中提到的"Grails开发之(Rest教程)"表明本文是一份关于Grails框架下进行RESTful服务开发的教程。Grails是一个使用Groovy语言编写的高生产力的框架,其使用约定优于配置的理念,允许快速开发Web应用程序。...

    eclipse开发grails插件

    对于Grails开发,我们需要的是Eclipse中的Grails插件,它能够提供对Grails项目的创建、运行、调试等一系列功能。 **Grails**是基于Groovy语言的全栈式Web开发框架,它借鉴了Ruby on Rails的设计理念,提供了快速...

    grails中文入门简介

    Grails是一个基于Groovy语言的全栈框架,它遵循约定优于配置的原则,并且紧密集成Spring和Hibernate等流行的Java库,简化了开发流程。Grails在IT行业中尤其受到重视,因为它能够帮助开发者快速搭建并部署基于MVC模式...

    grails快速开发web

    ### Grails 快速开发 Web 应用程序 #### 一、Grails 概述 Grails 是一种基于 Groovy 的开源应用框架,用于简化 Web 应用程序的开发过程。它采用约定优于配置的原则,这使得开发者可以更快地创建功能丰富的 Web ...

    grails-2.4.4.zip

    Grails 的强大之处在于其丰富的插件库,如Spring Security用于安全控制,Hibernate Search提供全文搜索功能,以及各种用于支付、邮件发送、社交网络集成的插件,极大地扩展了框架的功能。 6. **IDE集成** ...

    Grails中文参考手册

    Grails 插件系统是其强大功能之一,允许开发者复用和扩展已有功能。例如,有用于认证、缓存、邮件发送等的插件,可以快速集成到项目中。 **Grails Command Line Interface (CLI)** Grails 提供了一个强大的命令行...

    Grails开发之(Rest教程).docx

    在Grails中开发RESTful API是一项常见的任务,这个文档提供了基于Grails 3.1.5版本的REST教程。Grails是一种基于Groovy语言的开源Web应用框架,它利用了Spring Boot的功能,使得构建现代互联网应用程序变得更加高效...

    the definitive guide to grails 2

    Grails框架是建立在Groovy编程语言之上的一个完整的Web应用开发框架,它结合了Java平台的优势和动态语言的灵活性。Grails采用约定优于配置的原则,简化了开发流程,使开发者能够快速地构建高性能的Web应用程序。该...

    eclipse插件grails(groovy)

    Eclipse 插件 Grails(Groovy)是一个强大的开发工具,它使得在Eclipse环境中进行Groovy和Grails应用的开发变得更为便捷。Groovy是一种动态、面向对象的编程语言,而Grails则是一个基于Groovy的开源Web应用框架,...

    grails 中文文档+grails-fckeditor-0.9.5.zip插件

    3. Convention over Configuration(CoC):Grails的核心理念之一就是“约定优于配置”,这意味着开发者在很多情况下不需要写大量的配置文件,框架会自动根据约定进行工作。 二、Grails中文文档的价值 1. 学习入口...

    Groovy和Grails配置方法

    ### Groovy和Grails配置方法 #### 一、Groovy与Grails简介 Groovy是一种强大的面向对象编程语言,它运行在Java平台上,并且能够直接与Java代码进行交互。Groovy支持函数式编程特性,拥有丰富的语法糖以及简洁的...

    grails login

    **Grails登录系统详解** Grails是一个基于Java的开源Web应用程序框架,它使用Groovy语言进行开发,提供了高效、简洁的编程模型。在Grails中实现用户登录功能是构建任何Web应用的基础,它确保了数据的安全性和用户...

    Grails入门指南 -- 针对grails1.0.4更新

    ### Grails入门指南知识点 #### 一、Grails框架简介 - **背景**: Grails是一个基于Groovy语言的开源Web应用框架,适用于Java平台。它旨在简化开发过程,提高开发效率,尤其受到那些希望保留Java环境同时寻求更高效...

    grails ajax

    Grails 是一个基于Groovy语言的开源Web应用框架,它构建在Spring Boot之上,提供了丰富的功能和便捷的开发体验。Ajax(Asynchronous JavaScript and XML)技术则是Web开发中用于实现页面无刷新、局部更新的一种重要...

Global site tag (gtag.js) - Google Analytics