写点什么

一站式开源框架 Grails 3.0 发布

  • 2015-04-09
  • 本文字数:1071 字

    阅读完需:约 4 分钟

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-04-09 08:125727
用户头像

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

关注

评论

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

阿里云弹性计算技术专家樊毅伟:云上成本优化实践

阿里云弹性计算

自动化运维 资源利用

行业案例|长安汽车质量管理数据分析实践

Kyligence

质量管理 数据管理 长安汽车

微信Windows端IM消息数据库的优化实践:查询慢、体积大、文件损坏等

JackJiang

sqlite 微信 网络编程 即时通讯 IM

小六六学Netty系列之Netty群聊

自然

Netty 网络 9月月更

中文稀疏GPT大模型落地——通往低成本&高性能多任务通用自然语言理解的关键里程碑

阿里云大数据AI技术

自然语言处理 多任务 企业号九月金秋榜 GPT

SAP UI5 ManagedObject 的 Association 讲解

汪子熙

JavaScript typescript SAP UI5 ui5 9月月更

「趣学前端」骨架屏,分享一波前端UI组件开发的经验

叶一一

JavaScript 前端 组件 9月月更

Netty高并发处理架构设计介绍

孙大卫

架构 Netty 开发框架 9月月更

主流定时任务解决方案全横评

阿里巴巴云原生

阿里云 Serverless 云原生

软件测试 | 测试开发 | 如何模拟真实使用场景?mock 技术来帮你

测吧(北京)科技有限公司

测试

小六六学Netty系列之Java 零拷贝

自然

Netty 网络 9月月更

leetcode 104. Maximum Depth of Binary Tree 二叉树的最大深度(简单)

okokabcd

LeetCode 算法与数据结构

C语言_3 选择结构

泾箐

c 9月月更

长沙!《学习的学问》长沙分享会

博文视点Broadview

OpenHarmony中的HDF单链表及其迭代器

OpenHarmony开发者

Open Harmony

软件测试 | 测试开发 | 想测试入门就必须要懂的软件开发流程

测吧(北京)科技有限公司

测试

小六六学Netty系列之Java NIO(二)

自然

Netty 网络 9月月更

i++需要多少QPS才能测出BUG

FunTester

数据治理的内核:数据标准

Taylor

数据治理 大数据平台 数据管理平台 数据标准 大数据仓库

源于加速,不止加速-阿里云加速引擎的10年演化之路

阿里云CloudImagine

CDN CDN加速 CDN技术

找准风口,如何从运维转向 DevOps?

SoFlu-JavaAI开发助手

软件测试 | 测试开发 | 数据持久化技术(Java)

测吧(北京)科技有限公司

测试

易周金融分析 | 多家银行试水特色网点揽客;自动驾驶颠覆传统车险模式

易观分析

自动驾驶 金融 银行 网点

软件测试 | 测试开发 | Jenkins 踩坑(三)| Email 配置与任务邮件发送

测吧(北京)科技有限公司

测试

云游戏产业链深度解析

Finovy Cloud

云计算 5G 云渲染 云游戏

Spring源码分析(九)lazy-init 在Spring中是怎么控制加载的

石臻臻的杂货铺

spring 9月月更

C语言_2 变量

泾箐

c 9月月更

TOP 5!望繁信科技获评WAIC2022全球创新项目路演优胜项目

望繁信科技

WAIC2022

「工作小记」多个批量操作的链式实现

叶一一

前端 设计思维 React Hooks 9月月更

FreeRTOS记录(二、FreeRTOS任务API认识和源码简析)

矜辰所致

源码分析 FreeRTOS 9月月更 任务API

软件测试 | 测试开发 | 一文带你了解K8S 容器编排(上)

测吧(北京)科技有限公司

测试

一站式开源框架Grails 3.0 发布_语言 & 开发_李小兵_InfoQ精选文章