最近花了些时间了解了一下 Spring Boot 这个新框架。这个框架提供了快速开发基于 Spring Framework 的应用的功能。同样,SpringSource 旗下还有另一个用于 Web 应用快速开发的框架,就是 Grails。初看来这两个框架有很多相似的地方,所以可以将这两个框架做一下对比。

Spring Boot 强调自运行;Grails 应用则需要打包成 WAR 来运行

当然 Grails 应用也能通过内嵌的 Tomcat 或 Jetty 容器来运行,但这主要用于开发环境。在用于生产环境时,Grails 应用仍需要打包成 WAR 包。而 Spring Boot 的应用则主要是打包成可自运行的 JAR 包。

Spring Boot 侧重开发 RESTful Web Service;Grails 则提供了全面的 Web 应用支持,包括页面标签、Web 视图等等

Spring Boot 使用 Maven 和 Gradle 作为构建工具;Grails 使用自有的构建工具

Maven 和 Gradle 显然是两个最为广泛使用的构建工具。从构建工具的角度看,Spring Boot 更有通用性。而如果要用 Maven 去构建 Grails 应用倒也不难,但是需要一些并不复杂的额外工作。不过如果想用 Gradle 构建 Grails 应用那就更加麻烦一些了。

PS. 在使用 Maven 构建 Grails 应用时,我发现 Grails 的 grails create-pom 命令生成的 pom.xml 文件中缺少 servlet-api 的 dependency。需要手工添加,否则在用 Maven 编译打包时都会爆出 NoClassFound 的异常。

Spring Boot 通过添加 starter-module 的依赖来扩展功能;Grails 则通过插件

显然前者更加通用

数据库访问方面

Grails 通过 GORM 使得对关系型数据库支持更加的全面,也更易用。Spring Boot 则将关系型数据库和 NoSQL 数据库一视同仁

总结

当构建 Web 应用时,首选的框架仍然是 Grails。(PS. 当然 Play! Framework 也是不错的选择,但是我不喜欢 Scala)但是 Spring Boot 非常值得关注。因为它关注于简化现有的 Spring 应用的开发,而不是一种全新的解决方案。Spring Boot 为现在越来越臃肿的 Spring 应用提供了新的希望,从这个角度讲,它要比 Grails 会有更广泛的应用。

Spring Boot 是一阵小清新。Grails 虽然依旧是一个非常好用的 Web 快速开发框架,但是因为它是一站式解决方案,所以不可避免的变得有些庞大了。

grails springboot_Spring Boot 和 Grails 的不同点相关推荐

  1. grails框架_Play和Grails Java框架的优缺点

    grails框架 框架通过为程序员提供一些有用的功能来简化应用程序开发过程. 由于开发人员的普遍使用,Java框架经常被开发人员使用. 您可以在市场上找到各种Java开发框架. 新手开发人员经常在论坛 ...

  2. grails 调用java_GSP在Grails中的使用

    视图存储在grails-app/views directory目录下.主要想学习如何创建Taglib和如何利用模板技术. Grails使用GSP作为表现层,在GSP中groovy不只是表明GSP是基于 ...

  3. base64编码 springboot_Spring Boot 中如何实现 HTTP 认证?

    松哥给最近连载的 Spring Security 系列也录制了视频教程,感兴趣的小伙伴请戳这里->Spring Boot+Vue+微人事视频教程(Spring Boot 第十章就是 Spring ...

  4. ehcache springboot_Spring Boot应用缓存实践之:Ehcache加持

    1.Spring也引入了对 Cache的支持,那对于如今发展得如火如荼的 Spring Boot来说自然也是支持缓存特性的.当然 Spring Boot默认使用的是 SimpleCacheConfig ...

  5. 手写springboot_Spring Boot 入门教程 | 图文讲解

    目录 一.Spring Boot 是什么 二.为什么要使用 Spring Boot 三.快速入门 3.1 创建 Spring Boot 项目 3.2 项目结构 3.3 引入 Web 依赖 3.4 编写 ...

  6. ehcache springboot_Spring Boot 入门示例合集(附源代码)

    Spring Boot 入门实战示例 本项目是自己在学习 Spring Boot 时整理的一系列笔记,包含 Spring Boot 使用的各种示例,可以快速上手 Spring Boot 整合的一些子项 ...

  7. editor.md七牛云上传图片springboot_spring boot 若依系统整合Ueditor,部署时候上传图片错误解决...

    spring boot 若依系统整合Ueditor,部署时候上传图片错误解决 前言:国庆假期找了个ruoyi版本的cms玩玩,从git上看,介绍如下图: 后台部分截图: 编辑 ​ 编辑 ​ 编辑 ​ ...

  8. pkcs1解密 springboot_Spring Boot RSA 非对称加密

    /** * @Fields CHARSET : */ public static final String CHARSET = "UTF-8"; /** * @Descriptio ...

  9. 《Spring Boot极简教程》第8章 Spring Boot集成Groovy,Grails开发

    第8章 Spring Boot集成Groovy,Grails开发 本章介绍Spring Boot集成Groovy,Grails开发.我们将开发一个极简版的pms(项目管理系统). Groovy和Gra ...

最新文章

  1. oracle表空间更改用户,ORACLE创建表空间、创建用户、更改用户默认表空间以及授权、查看权限...
  2. “国产操作系统最大难题在于解决「生产关系」” | 人物志
  3. 多参量最优化matlab,fmincon函数优化多个参数
  4. 文件包含——概念(一)
  5. myeclipse导入项目报错Target runtime Apache Tomcat v8.0 is not defined
  6. MYSQL存储过程中 表名 使用变量
  7. Codeforces Round #207 (Div. 1) B. Xenia and Hamming(gcd的运用)
  8. 页游中的十大经典游戏题材
  9. Visual Studio的.NET内存分配分析器解析
  10. PHP exec() has been disabled for security reasons
  11. ADO.NET基础复习(二)
  12. Java链表-合并两个有序链表
  13. 内存颗粒位宽和容量_内存颗粒编号与内存品牌知识介绍
  14. fms 集群方法测试
  15. matlab代码:考虑实时市场联动的电力零售商鲁棒定价策略
  16. 实现CS客户端服务器模型(Linux系统)
  17. linux shell编程大作业,《Linux操作系统》Shell编程大作业-01-潘春艳.doc
  18. 使用PdfSharp从模板生成Pdf文件
  19. 【实例】使用jquery自带的slideToggle由上到下缓缓加载图片
  20. 嵌入式系统求职回忆录

热门文章

  1. Ubuntu 12.04硬盘安装与U盘安装(图文)
  2. Delphi CreateMutex 防止程序多次运行
  3. linux inittab文件在哪,Linux 中/etc/inittab文件的字段及其说明(转)
  4. linux动态链接库全局变量共享问题DLL共享数据段
  5. C++ 内存泄漏检测工具valgrind简单使用
  6. 【STM32】NVIC 中断优先级管理,抢占优先级,响应优先级,中断寄存器
  7. 4. PyQt5的主要模块
  8. centos8安装jdk
  9. arm linux fpu,ARM处理器的浮点运算单元(FPU)
  10. Web网页如何实现QQ好友,QQ空间,微博分享