`
agile_boy
  • 浏览: 556800 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Grails 0.6 新特性简单一览

阅读更多
  首先声明,虽然Graeme Rocher 已经将Grails 0.6的新特性做了简介,可是到目前为止Grails 0.6还没有正式发布,不过也指日可待了。
  原文请参考Grails 0.6 Release Notes,以下是就我本人的了解做了一个简单翻译,以先飨部分Grails fans。

  Grails 0.6主要新特性如下:
  • Groovy和Java联编(联合编译)
  • 集成Spring的Web Flow
  • 在Grails的services中支持Spring的scopes
  • 提高了对REST的支持,可以自动地使用XML/JSON编码,支持RESTful URL映射
  • 新的专门用于配置的DSL取代了原来的convention
  • 支持Sitemesh的inline decorators
  • 启动时间,单元测试和生成工具,在速度上都有大幅度的提高
   现就部分特性做些详细介绍

  Groovy和Java联编

    Groovy和Java的联编意味着在Java源代码中可以直接调用Groovy的类,而且Java源代码现在也支持运行时动态加载,这样一来大大减少了服务器的启动次数。

  集成Web Flow

    有了Spring Web Flow项目的支持,Grails现在可以构建有状态的flows了,详细的DSL可以参考Web Flow 描述,此处仅给出一个简单示例
java 代码
 
  1. class BookController {     
  2.    ...  
  3.    def shoppingCartFlow = {   
  4.        showCart {  
  5.            on("checkout").to "enterPersonalDetails"  
  6.            on("continueShopping").to "displayCatalogue"  
  7.        }  
  8.        ...  
  9.        displayCatalogue {  
  10.             redirect(controller:"catalogue", action:"show")  
  11.        }  
  12.        displayInvoice()  
  13.    }  
  14. }  
    Grails在集成Hibernate 和 Web Flow的基础上,允许将会话的范围绑定在一个单独的session上,因此也支持事务会话的乐观锁。

  支持Spring的scopes

    Grails的services类现在支持Spring和Web Flow的scopes。比如一个service class可以在指定"flow"范围,而且可以在客户端和服务器端维护其状态。
java 代码
  1. ass BookService implements Serializable {  
  2.      static scope = "flow"  
  3. }  
    其他支持的scopes还包括"prototype", "singleton", "request", "session", "flash", "flow" 和 "conversation",其中后三个是属于Web Flow的

   REST和Web Services

     Grails 0.6通过URL Mappings加强了对REST的支持,一个URL映射可以将action和HTTP方法一一对应,比如
   
java 代码
 
  1. mappings {  
  2.   "/books/$id?" {  
  3.       controller = "book"  
  4.       action = [GET:"list", DELETE:"delete", POST:"update", PUT:"save"]  
  5.   }  
  6. }  
    此外,一个新的功能点是现在可以轻松地进行 XML 或者JSON 转化了(以前这个特性仅仅在Converters插件中有效)。看一下以下代码就知道了 :)
java 代码
 
  1. ort grails.converters.*  
  2. ...  
  3.   
  4. def list = {  
  5.     render Book.list() as XML  
  6.     // or render Book.list() as JSON  
  7. }  
分享到:
评论
4 楼 geszJava 2007-08-23  
貌似0.6最迟在下个月出可以发布了把.
混编应该是个好东西,可以暂时解决一些效率问题.
目前的效率问题最多的可能是出现在gsp页面上的一堆tag上.想想还是使用jsp稍微好一点.
找到了这样一篇文章:SyncTheMilk: Business logic in Groovy, UI in Java这倒也是个不错的选择.
3 楼 agile_boy 2007-08-23  
好像是的,不过,对我本人来说,目前还没有用JSP Tag的计划 
看MailList,1.0还是很值得期待的。
2 楼 山风小子 2007-08-22  
可惜在Grails0.6中还是不支持JSP Tag,好像被放到Grails1.0RC1中了。。。
1 楼 Puras 2007-08-21  
期待啊~~~

相关推荐

    grails快速开发web

    #### 二、Grails 的核心特性 - **面向领域语言 (DSL)**:Grails 提供了一种面向领域的语言,让开发者能够用更少的代码完成更多的工作。 - **自动配置**:Grails 自动处理很多配置细节,如数据源、日志管理等,减少...

    Grails Grails Grails

    通过阅读这份文档,开发者可以深入理解Grails 1.1的核心特性和开发流程,从而更好地利用Grails构建高效、健壮的Web应用。 总结来说,Grails 是一个强大的Web开发框架,借助Groovy的灵活性和Java生态的稳定性,为...

    eclipse开发grails插件

    4. **创建Grails项目**:现在,你可以通过Eclipse的"New" -> "Grails Project"来创建一个新的Grails项目。选择合适的Grails版本和其他配置,然后Eclipse会自动生成项目结构。 5. **开发与调试**:在Eclipse中,你...

    Grails权威指南 Grails权威指南

    Grails框架的核心特性包括模型-视图-控制器(MVC)架构、领域驱动设计(DDD)、自动化构建流程以及丰富的插件系统。通过这些特性,开发者能够快速构建功能丰富的Web应用,同时保持代码的清晰性和可维护性。 1. **...

    Eclipse下搭建Grails项目

    创建新项目时,你可以利用配置好的Grails外部工具执行`create-domain-class`等命令,快速生成领域模型类。在Eclipse中,Grails项目的结构和管理将得到很好的支持,包括源代码编辑、构建、测试和调试。 注意,尽管...

    Grails权威指南 中文版

    Grails支持的动态语言特性,使得Web应用开发变得更加简单和直观。 本书详细讲解了Grails开发的整个流程。首先,书中介绍了Grails的目的和优势,让读者理解选择Grails的理由。接着,书中深入讲解了Groovy语言的基础...

    grails-1.2.2.zip

    Grails 1.2.2是该框架的一个重要版本,它在1.x系列中扮演了承上启下的角色,引入了许多改进和新特性,进一步提升了开发者的生产力。 首先,我们来了解一下Grails的核心特性。Grails是基于MVC(Model-View-...

    Grails中文参考手册

    **Grails 概述** Grails 是一个基于 Groovy 语言的开源 web 应用程序框架,它构建在 Java 平台上,旨在...通过深入学习 "Grails 中文参考手册",开发者可以充分利用 Grails 的各种特性,构建出高质量的 web 应用程序。

    grails 中文第二版

    **Grails 2.0新特性** 1. **面向开发的特性** - 改进了开发者体验,例如通过简化配置来提高开发效率。 - 引入了新的工具和功能,如Groovy模板引擎Thymeleaf的支持。 2. **核心特性** - 对性能进行了优化,提高...

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

    4. 版本兼容:虽然grails-fckeditor-0.9.5是较旧的版本,但理解其工作原理有助于我们理解如何集成第三方库,以及在更新到新版本时需要注意的问题。 总结,Grails框架及其中文文档为开发者提供了强大的工具和丰富的...

    grails-5.1.2.zip

    Grails 是一个基于Groovy语言的开源Web应用框架,它构建于Java平台之上,旨在简化开发过程并提高生产力。...无论是对于初学者还是经验丰富的开发人员,这个版本都提供了许多值得关注和学习的新特性。

    grails中文入门简介

    Grails的国际化支持非常好,开发者可以通过简单的配置来为不同的语言环境定制应用程序。 在服务层,Grails支持声明式事务,并允许通过依赖注入将服务集成到应用程序中。服务的作用域和生命周期是Grails服务管理的一...

    Grails1.1中文文档.rar

    Grails 1.1是该框架的一个重要版本,提供了许多新特性和改进。 ### 核心技术 1. **Groovy语言**:Grails 使用Groovy作为其主要的编程语言,Groovy是Java平台上的动态脚本语言,语法简洁,支持元编程,让开发者能够...

    grails-用户手册

    例如,`grails create-app` 创建新应用,`generate-controller` 生成控制器,`generate-domain-class` 生成领域类。 四、GORM(Grails Object Relational Mapping) GORM是Grails的持久化框架,它实现了Hibernate...

    grails中文参考手册

    Grails以其高效、灵活和强大的特性,成为开发人员在Java平台上构建Web应用的热门选择。这份手册旨在帮助初学者快速上手,并为有经验的开发者提供深入的指导。 1. **简介** Grails是基于Groovy语言的开源Web应用...

    grails-2.4.4

    Grails 2.4.4的改进与新特性** - **性能提升**:2.4.4版本对核心框架进行了优化,提高了应用的启动速度和运行时性能。 - **Groovy升级**:与Groovy 2.x兼容,带来了新的语言特性,如闭包作为方法参数、元编程增强...

Global site tag (gtag.js) - Google Analytics