首先声明,虽然
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 代码
- class BookController {
- ...
- def shoppingCartFlow = {
- showCart {
- on("checkout").to "enterPersonalDetails"
- on("continueShopping").to "displayCatalogue"
- }
- ...
- displayCatalogue {
- redirect(controller:"catalogue", action:"show")
- }
- displayInvoice()
- }
- }
Grails在集成Hibernate 和 Web Flow的基础上,允许将会话的范围绑定在一个单独的session上,因此也支持事务会话的乐观锁。
支持Spring的scopes
Grails的services类现在支持Spring和Web Flow的scopes。比如一个service class可以在指定"flow"范围,而且可以在客户端和服务器端维护其状态。
java 代码
- ass BookService implements Serializable {
- static scope = "flow"
- }
其他支持的scopes还包括"prototype", "singleton", "request", "session", "flash", "flow" 和 "conversation",其中后三个是属于Web Flow的
REST和Web Services
Grails 0.6通过URL Mappings加强了对REST的支持,一个URL映射可以将action和HTTP方法一一对应,比如
java 代码
- mappings {
- "/books/$id?" {
- controller = "book"
- action = [GET:"list", DELETE:"delete", POST:"update", PUT:"save"]
- }
- }
此外,一个新的功能点是现在可以轻松地进行 XML 或者JSON 转化了(以前这个特性仅仅在Converters插件中有效)。看一下以下代码就知道了 :)
java 代码
- ort grails.converters.*
- ...
-
- def list = {
- render Book.list() as XML
-
- }
分享到:
相关推荐
#### 二、Grails 的核心特性 - **面向领域语言 (DSL)**:Grails 提供了一种面向领域的语言,让开发者能够用更少的代码完成更多的工作。 - **自动配置**:Grails 自动处理很多配置细节,如数据源、日志管理等,减少...
通过阅读这份文档,开发者可以深入理解Grails 1.1的核心特性和开发流程,从而更好地利用Grails构建高效、健壮的Web应用。 总结来说,Grails 是一个强大的Web开发框架,借助Groovy的灵活性和Java生态的稳定性,为...
4. **创建Grails项目**:现在,你可以通过Eclipse的"New" -> "Grails Project"来创建一个新的Grails项目。选择合适的Grails版本和其他配置,然后Eclipse会自动生成项目结构。 5. **开发与调试**:在Eclipse中,你...
Grails框架的核心特性包括模型-视图-控制器(MVC)架构、领域驱动设计(DDD)、自动化构建流程以及丰富的插件系统。通过这些特性,开发者能够快速构建功能丰富的Web应用,同时保持代码的清晰性和可维护性。 1. **...
创建新项目时,你可以利用配置好的Grails外部工具执行`create-domain-class`等命令,快速生成领域模型类。在Eclipse中,Grails项目的结构和管理将得到很好的支持,包括源代码编辑、构建、测试和调试。 注意,尽管...
Grails支持的动态语言特性,使得Web应用开发变得更加简单和直观。 本书详细讲解了Grails开发的整个流程。首先,书中介绍了Grails的目的和优势,让读者理解选择Grails的理由。接着,书中深入讲解了Groovy语言的基础...
Grails 1.2.2是该框架的一个重要版本,它在1.x系列中扮演了承上启下的角色,引入了许多改进和新特性,进一步提升了开发者的生产力。 首先,我们来了解一下Grails的核心特性。Grails是基于MVC(Model-View-...
**Grails 概述** Grails 是一个基于 Groovy 语言的开源 web 应用程序框架,它构建在 Java 平台上,旨在...通过深入学习 "Grails 中文参考手册",开发者可以充分利用 Grails 的各种特性,构建出高质量的 web 应用程序。
**Grails 2.0新特性** 1. **面向开发的特性** - 改进了开发者体验,例如通过简化配置来提高开发效率。 - 引入了新的工具和功能,如Groovy模板引擎Thymeleaf的支持。 2. **核心特性** - 对性能进行了优化,提高...
4. 版本兼容:虽然grails-fckeditor-0.9.5是较旧的版本,但理解其工作原理有助于我们理解如何集成第三方库,以及在更新到新版本时需要注意的问题。 总结,Grails框架及其中文文档为开发者提供了强大的工具和丰富的...
Grails 是一个基于Groovy语言的开源Web应用框架,它构建于Java平台之上,旨在简化开发过程并提高生产力。...无论是对于初学者还是经验丰富的开发人员,这个版本都提供了许多值得关注和学习的新特性。
Grails的国际化支持非常好,开发者可以通过简单的配置来为不同的语言环境定制应用程序。 在服务层,Grails支持声明式事务,并允许通过依赖注入将服务集成到应用程序中。服务的作用域和生命周期是Grails服务管理的一...
Grails 1.1是该框架的一个重要版本,提供了许多新特性和改进。 ### 核心技术 1. **Groovy语言**:Grails 使用Groovy作为其主要的编程语言,Groovy是Java平台上的动态脚本语言,语法简洁,支持元编程,让开发者能够...
例如,`grails create-app` 创建新应用,`generate-controller` 生成控制器,`generate-domain-class` 生成领域类。 四、GORM(Grails Object Relational Mapping) GORM是Grails的持久化框架,它实现了Hibernate...
Grails以其高效、灵活和强大的特性,成为开发人员在Java平台上构建Web应用的热门选择。这份手册旨在帮助初学者快速上手,并为有经验的开发者提供深入的指导。 1. **简介** Grails是基于Groovy语言的开源Web应用...
Grails 2.4.4的改进与新特性** - **性能提升**:2.4.4版本对核心框架进行了优化,提高了应用的启动速度和运行时性能。 - **Groovy升级**:与Groovy 2.x兼容,带来了新的语言特性,如闭包作为方法参数、元编程增强...