写点什么

一站式开源框架 Grails 3.0 发布

2015 年 4 月 09 日

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 )关注我们,并与我们的编辑和其他读者朋友交流。

2015 年 4 月 09 日 08:125195
用户头像

发布了 46 篇内容, 共 45.9 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

腾讯云副总裁刘煜宏:大数据平台算力弹性资源池达500万核,国内最强

小小的一朵云

大数据

Dromara团队发布Hmily全新架构的2.1.1版本

猫大人

分布式事务 分布式柔性事务‘’

CSS语法与规则 — 重学CSS

三钻

CSS 前端 前端进阶

腾讯云大数据发布最新产品矩阵,助力企业整合打通海量数据

小小的一朵云

大数据

用go语言实现快排

Sean

go 算法 快速排序

高中生写LOL外挂1年狂赚五百万,落网前刚买下120万保时捷

Java架构师迁哥

Greenplum 性能优化之路 --(二)存储格式

小小的一朵云

大数据

联邦计算:不暴露真实数据如何完成合作建模?

小小的一朵云

大数据

持续引领大数据行业发展,腾讯云发布全链路数据开发平台WeData

小小的一朵云

大数据

【FastDFS】SpringBoot整合FastDFS实战,我只看这一篇!!

冰河

springboot fastdfs

优秀组织的5大表现

异想的芦苇

团队管理 团队组织 组织

FastDFS 分布式文件系统详解

哈喽沃德先生

文件系统 分布式文件存储 fastdfs 分布式文件

烦人的Null,你可以走开点了

四猿外

Java 注解 空指针 Optional null

鲲鹏播种于时代,花开五色中原

脑极体

码住!Flink Contributor 速成指南

Apache Flink

flink 开源社区

架构师训练营第1期第3周作业

业哥

极客大学架构师训练营

Greenplum 性能优化之路 --(三)ANALYZE

小小的一朵云

大数据 数据仓库

架构师训练营第 1 期第 3 周学习总结

好吃不贵

极客大学架构师训练营

Greenplum 性能优化之路 --(一)分区表

小小的一朵云

大数据

c++杂谈4

菜鸟小sailor 🐕

智能体的奇幻漂流之“成都折叠”篇

脑极体

Java源码系列3——LinkedHashMap

超超不会飞

Java

Smartisan

Changing Lin

摄影

基于 Flink + Hive 构建流批一体准实时数仓

Apache Flink

flink

在 InfoQ 兼职做运营

邓瑞恒Ryan

创业 用户增长 创业心态 运营 产品运营

架构师训练营第三周作业

邓昀垚

极客大学架构师训练营

【架构笔记之设计模式】架构师训练营第1期第3周

业哥

极客大学架构师训练营

一个好系统自我完善自我进化的方法

boshi

产品思维 系统工程 即时反馈 生态体系

经常使用的数据结构

hasWhere

Java源码系列2——HashMap

超超不会飞

Java

Java源码系列4——HashMap扩容时究竟对链表和红黑树做了什么?

超超不会飞

Java

NLP领域的2020年大事记及2021展望

NLP领域的2020年大事记及2021展望

一站式开源框架Grails 3.0 发布-InfoQ