java - 与其他 Java Web 框架相比,Grails 有哪些优势?

标签 java grails jakarta-ee

我使用过 JSF、Spring MVC 和 Struts,我认为我在这些框架上的水平很高。最近我听说与我共事的许多优秀开发人员正在学习 Grails 并将其用于他们的项目。

与其他框架相比,Grails 有哪些实际优势?除了我知道其他框架外,还值得学习吗?围绕 Grails 的所有讨论是什么,仅仅是因为 Groovy 吗?

注意:我在 SO 中进行了研究,发现的唯一相关问题是 this并且没有提到 Grails

最佳答案

正如您所说,Grails 是在 Groovy 的基础上构建的,它具有提高生产力的直接好处。 Groovy 语法比 Java 简洁得多,用一行 Groovy 代码来做一些在 Java 中需要多行代码的事情要容易得多。

Grails 特别为您提供了许多优于其他 Web 框架的优势(不过我只能谈论 Struts 1.x、2.x 和 SpringMVC)- 顺便说一下,Grails 实际上构建在 SpringMVC 之上,您可以集成使用 Spring 的其他组件。

  • 数据库迁移和版本控制 - 不再有应用程序与数据库架构不同步综合症。大多数 Java 网络应用都存在这种问题。

  • Artefacts - 使创建新的 Controller 和组件更加容易。无需再创建 Controller 、配置它并将其放入 Web 应用程序中的正确位置。哦!脚手架还为您提供了所有一些初始组件,让您可以开始构建您的页面并进行自定义

  • 更简单的验证(定义比 Struts 1.x 更简单),例如username(size:6..10, blank:false) 为用户名字段指定两个验证规则,使其具有特定长度且非空白。在其他 Java Web 应用程序框架中有点难。

  • 内置 Webflow(通过 Spring webflow),这使得创建复杂的工作流变得更加简单。 Struts 2 可以支持 Webflow,但通过一个插件,如果我记得的话,这有点奇怪。 Spring 也可以。

  • 拦截器 - SpringMVC 也有这些。

  • Flash 范围,参见 http://grails.org/doc/docs/1.1/ref/Controllers/flash.html

  • 更好的数据绑定(bind) - Struts 2 非常好,比 Struts 1 好得多。SpringMVC 也不错。

还有一些,查看文档了解更多详情:http://grails.org/doc/1.1.1/

关于java - 与其他 Java Web 框架相比,Grails 有哪些优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/896320/

相关文章:

java - Ubuntu 14.04 LTS 上的 Grails 出现奇怪的错误 .../3.1.5/grails-dependencies-3.1.5.jar'。从服务器 : Conflict 收到状态代码 409

Eclipse -> 调试 -> 表达式不起作用

concurrency - 如何在 WebLogic 10.3 中配置 WorkManager?

java - 正则表达式,替换标签内的空格

java - 将鼠标事件从 JList 转发到列表中的项目

grails - 如何重定向到 Grails 应用程序中最后访问的页面?

Eclipse:从版本控制导入的 Web 项目未从服务器运行时中找到类

java - struts2 中的paramsPrepareParamsStack 拦截器?

java - 为什么rabbitmq队列绑定(bind)会自动更改?

java - 如何将 dpi 响应图像添加到 android studio?