Grails 是一套用于快速 Web 应用开发的一站式开源框架。近日,Grails 3.0发布,该版本在构建系统、核心API、Web 开发、功能测试等方面有了明显的改进,如基于最新的Groovy 2.4 实现、基于Spring Boot 1.2 构建、采用了基于 Gradle 的构建系统等。Grails 3.0 主要的改进内容包括:
1、 核心功能
- Grails 3.0 基于最新的 Groovy 2.4 实现,故带了许多新功能和优化改进。
- Grails 3.0 基于 Spring4.1、Spring Boot 1.2 构建,Spring Boot 1.2 能够生成可执行 jar 文件,这些 jar 文件能够嵌入到 Tomcat、Jetty 或者 Undertow 。
- Grails 3.0 抛弃了基于 Gantry 的旧构建系统,并采用了基于 Gradle 的构建系统,从而能够很好的集成 Gradle 插件的生态系统。
- Grails 3.0 支持通过配置文件库进行应用配置,如配置应用的架构、命令集、插件和功能等。
- 基于 Groovy Traits 重新设计了 API,包括共有 API、私有 API 以及核心 API 等。
2、Web 功能
- 新增了拦截器 API,旧版本中的过滤器是用来定义逻辑以拦截 Controller 的执行。
3、开发环境
- Grails 3.0 引入了一个全新的交互式命令行 shell,且集成了 Gradle,并提供了用来编写脚本的 API,并同 Gradle 进行交互以生成代码。
- 新命令行 shell 能够配置具体的命令。
- Grails 3.0 基于 Gradle 构建,开发者能够使用 IntelliJ IDEA 的社区版本导入 Grails 工程。
- Grails 3.0 的插件以 Jar 文件的格式发布,这就大大减少了额外 IDE 支持的依赖。
- 每个新的 Grails 3.0 工程都具有一个应用 Main 类以运行或者调试 Grails 3.0 应用,就如 IntelliJ IDEA 和 GGTS (Groovy/Grails Tool Suite)一样,无需利用命令行即可实现运行和调试。
4、测试功能
- Grails 3.0 利用 create-functional-test 命令实现了对 Spock/Geb 功能测试的支持。
- Grails 3.0 的功能测试基于 Spring Boot 的测试运行机制实现,只需为整个测试套加载应用一次,并且无需通过命令行来运行测试套,在 IDE 支持下即可实现测试。
- 因为 Grails 3.0 基于 Gradle 构建,所以测试执行环境的配置非常灵活和简单。
Grails 使用 Groovy 实现,且构建于 Spring、Hibernate 和其它标准 Java 框架之上,属于一站式框架。而 Groovy 是一种基于 JVM 的开发语言,它结合了 Python、Ruby 和 Smalltalk 的众多优点,且能够与 Java 良好地结合使用。此外,Grails 官方还提供了 3.0 版本的众多文档供大家参考,如入门指南、参考指南等。
感谢郭蕾对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流。
评论