Spring Boot 和 Grails 的不一样点

最近花了些时间了解了一下 Spring Boot 这个新框架。这个框架提供了快速开发基于 Spring Framework 的应用的功能。一样,SpringSource 旗下还有另外一个用于 Web 应用快速开发的框架,就是 Grails。初看来这两个框架有不少类似的地方,因此能够将这两个框架作一下对比。数据库

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

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

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 数据库一视同仁code

总结

当构建 Web 应用时,首选的框架仍然是 Grails。(PS. 固然 Play! Framework 也是不错的选择,可是我不喜欢 Scala)可是 Spring Boot 很是值得关注。由于它关注于简化现有的 Spring 应用的开发,而不是一种全新的解决方案。Spring Boot 为如今愈来愈臃肿的 Spring 应用提供了新的但愿,从这个角度讲,它要比 Grails 会有更普遍的应用。xml

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

相关文章
相关标签/搜索