Spring-Boot-与-Grails-3相结合可以完成什么?

**Grails一直都是构建于Spring、Groovy、Hibernate和其他巨人肩膀之上的高阶框架。**到了Grails 3,Grails已经基于Spring Boot,带来了令人愉悦的开发体验。Grails开发者和Spring Boot开发者都能驾轻就熟。

要使用Grails 3,首先要进行安装。在Mac OS X和大部分Unix系统上,最简单的安装方法是在命令行里使用SDKMAN:

$ sdk install grails

如果你用的是Windows,或者无法使用SDKMAN,就需要下载二进制发布包。解压后要将bin 目录添加到系统路径里去。

无论用哪种安装方式,你都可以在命令行中查看Grails的版本,验证安装是否成功:

$ grails -version

如果安装成功,现在就可以创建Grails项目了。

一、创建新的 Grails 项目

在Grails项目中,你会使用grails命令行工具执行很多任务,包括创建项目。要创建阅读列表项目,可以这样使用grails命令:

$ grails create-app readinglist

正如这个命令的名字所示,create-app创建了新的应用程序项目。这个例子里的项目名为 readinglist。

等grails工具创建完应用程序,cd到了readinglist目录里,看看所创建的内容吧。下图应该就是你看到的项目结构的概览。

在这个项目目录结构里,你应该认出了一些熟悉的东西。这里有一个Gradle的构建说明文件和配置(build.gradle和gradle.properties)。src目录里还有一个标准的Gradle项目结构,但是grails-app应该是里面最有趣的目录。如果用过老版本的Grails,你就会知道这个目录的作用。这里面放的是你写的控制器、领域类和其他构成Grails项目的代码。

Grails 3项目的目录结构

如果再深挖一下,打开build.gradle文件,会发现一些更熟悉的东西。首先,构建说明文件里使用了Spring Boot的Gradle插件:

apply plugin: "spring-boot"

这意味着你能像使用其他Spring Boot应用程序那样构建并运行这个Grails应用程序。

你还应该注意到,依赖里有不少有用的Spring Boot库:

dependencies { 
 compile 'org.springframework.boot:spring-boot-starter-logging' 
 compile("org.springframework.boot:spring-boot-starter-actuator") 
 compile "org.springframework.boot:spring-boot-autoconfigure" 
 compile "org.springframework.boot:spring-boot-starter-tomcat" 
 ... 
}

这些库为Grails应用程序提供了Spring Boot的自动配置、日志,还有Actuator及嵌入式Tomcat。 把应用当作可执行JAR运行时,这个Tomcat可以提供服务。

实际上,这是一个Spring Boot项目,同时也是Grails项目,因为Grails 3就是构建在Spring Boot 的基础上的。

运行应用程序

运行Grails应用程序最直接的方式是在命令行里使用grails工具的run-app命令:

$ grails run-app

就算一行代码都还没写,我们也能运行应用程序,在浏览器里进行访问。一旦应用程序启动,就可以在浏览器里访问http://localhost:8080。你应该能看到类似下图的页面。

全新的Grails应用程序

在Grails里运行应用程序要使用run-app命令,这种方式已经用了很多年,上个版本的Grails也是这样。Grails 3项目的Gradle说明里使用了Spring Boot的Gradle插件,你还可以用各种运行Spring Boot项目的方式来运行这个应用程序。此处通过Gradle引入了bootRun任务:

$ gradle bootRun
<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值