带有第三方工具的Spring Boot Initilizr

时间:2020-02-23 14:35:48  来源:igfitidea点击:

Spring Boot Initilizr用于快速启动新的Spring Boot Maven/Gradle项目。
它生成初始项目结构并构建脚本以减少开发时间。

Spring Boot Initilizr具有以下形式:

  • 具有Web界面的Spring Boot Initilizr
  • 具有IDE/IDE插件的Spring Boot Initilizr
  • 使用Spring Boot CLI的Spring Boot Initilizr
  • 带有第三方工具的Spring Boot Initilizr

现在,我们将讨论"如何使用带有第三方工具的Spring Boot Initilizr"来使用"如何使用一些流行的第三方工具来引导Spring应用程序"。

带有第三方工具的Spring Boot Initilizr

我们还可以使用以下第三方工具来引导Spring Boot应用程序。

  • CURL工具
  • HTTPie工具

在以下各节中,我们将通过一些简单的示例逐一讨论这些工具。

带" curl"工具的Spring Boot示例

" curl"是一个开源库和命令行工具,用于使用各种协议(例如FTP,FTPS,HTTP,HTTPS,SMTP,POP3,LDAP等)传输数据。
我们还可以使用此工具非常轻松地引导我们的Spring Boot应用程序。

" curl"官方位于:https://curl.haxx.se/

" curl"提供了两个项目:

  • cURL Project –命令行工具
  • libcurl项目库

" cURL"工具设置请访问" https://curl.haxx.se/download.html"URL以下载" cURL"工具。

我已经下载了Windows 64Bit zip文件,如下所示

下载完成后,我们将获得如下所示的zip文件。
只需解压缩该zip文件即可获取" curl.exe"文件。

在Windows中,我们需要设置以下系统变量:

PATH=D:\SpringBoot;%PATH%

这里的" D:\SpringBoot"是我的本地文件系统路径,其中" curl.exe"命令可用。

" cURL"语法:我们需要遵循以下语法来创建我们的Spring Boot应用程序。

curl [options...] <url>

通过执行" curl –help"命令,我们可以获得所有可用的选项。
引导Spring Boot应用程序是Spring Initializr URL :: https://start.spring.io。

当我们在CMD Prompt上执行" curl start.spring.io"时,我们可以看到所有可用的参数,Spring Boot"依赖项"或者"功能"列表等。

" cURL"示例:

示例1:-创建默认的Spring Boot项目

curl https://start.spring.io/starter.zip -o SpringBootCurlDefaultProject.zip

它为当前工作目录中的Maven构建工具创建一个名称为" SpringBootCurlDefaultProject.zip"的默认Spring Boot项目,如下所示:

示例2:-使用Gradle构建工具创建具有必需的"依赖项"和必需的包装类型的Spring Boot项目

curl https://start.spring.io/starter.zip -d dependencies=web,data-jpa,jms,ws
   -d packaging=war 
   -d type=gradle-project
   -o SpringBootCurlWebProject.zip

在这里我们使用" -d"选项指定参数。

" -d type = gradle-project"表示创建Gradle项目。
我们可以为Maven项目指定的方法相同:" -d type = maven-project"(这是" type"参数的默认值)。

示例3:-创建一个具有所需"依赖项"和所需Maven构建工具的打包类型的Spring Boot项目

curl https://start.spring.io/starter.zip 
   -d dependencies=web,jdbc,ws,cloud-aws,h2 
   -d packaging=war 
   -d type=maven-project
   -o SpringBootCurlWebMavenProject.zip

在这里我们使用" -d"选项指定参数。

" -d type = gradle-project"表示创建Gradle项目。
" type = maven-project"使用pom.xml文件创建一个Maven项目(这是" type"参数的默认值)。

它使用Spring MVC,Spring JDBC,Spring WS,具有AWS和H2数据库功能的Spring Cloud创建Mavenized项目。

示例4:-通过指定Java和Spring Boot Framework版本,为Gradle构建工具创建具有所需"依赖项"和所需打包类型的Spring Boot项目。

默认情况下," spring init"命令将提取"系统变量"并采用适当的Spring Boot和Java版本。
但是,可以指定Spring Boot和Java版本。

我的Windows系统配置了Java版本= 1.8和Spring Boot版本= 1.2.3.RELEASE。
但是我想在创建新的Spring Boot项目时更改它们,如下所示。

curl https://start.spring.io/starter.zip 
   -d dependencies=web,jdbc,ws,cloud-aws,h2 
   -d packaging=war 
   -d type=gradle-project
   -d javaVersion=1.7
   -d bootVersion=1.2.5.RELEASE
   -o SpringBootCurlWebGradleProject.zip

在这里我们使用" -d"选项指定参数。

  • " -d javaVersion = 1.7"选项用于指定Java版本,例如1.7、1.8等。

  • " -d bootVersion = 1.2.5.RELEASE"选项用于指定Spring Boot Framework版本,例如1.2.5、1.3等。

  • " -d type = gradle-project"表示创建Gradle项目。

  • " type = maven-project"使用pom.xml文件创建一个Maven项目(这是" type"参数的默认值)。

  • " -d依赖关系= web,jdbc,ws,cloud-aws,h2"指定我们的项目功能。

  • " -d packaging = war"选项指定包装类型为" war"。
    默认值为" jar"。
    它接受" pom,jar,war,ear,rar,par"

它使用Spring MVC,Spring JDBC,Spring WS,具有AWS的Spring Cloud,H2数据库功能创建Mavenized项目,并使用Java Varsion = 1.7和Spring Boot Framework版本= 1.2.5.RELEASE。

就是使用" curl"工具通过简单的命令引导Spring Boot应用程序的过程。
我们可以将那些项目导入到我们的Spring IDE中,并可以根据我们的项目要求对其进行增强。

注意:

我们可以在"使用Spring Boot CLI的Spring Boot Initilizr"中以逗号分隔的"依赖项"列表参考支持的标识符列表。

以下部分列出了受支持的构建选项。

+-----------------+-----------------------------------------+
| Rel             | Description                             |
+-----------------+-----------------------------------------+
| gradle-build    | Generate a Gradle build file            |
| gradle-project  | Generate a Gradle based project archive |
| maven-build     | Generate a Maven pom.xml                |
| maven-project * | Generate a Maven based project archive  |
+-----------------+-----------------------------------------+

默认的构建参数值为" maven-project"

URI模板采用一组参数来定制对链接资源的请求结果。

+-----------------+------------------------------------------+------------------------------+
| Parameter       | Description                              | Default value                |
+-----------------+------------------------------------------+------------------------------+
| applicationName | application name                         | DemoApplication              |
| artifactId      | project coordinates (infer archive name) | demo                         |
| baseDir         | base directory to create in the archive  | no base dir                  |
| bootVersion     | spring boot version                      | 1.2.5.RELEASE                |
| dependencies    | dependency identifiers (comma-separated) | none                         |
| description     | project description                      | Demo project for Spring Boot |
| groupId         | project coordinates                      | org.test                     |
| javaVersion     | language level                           | 1.8                          |
| language        | programming language                     | java                         |
| name            | project name (infer application name)    | demo                         |
| packageName     | root package                             | demo                         |
| packaging       | project packaging                        | jar                          |
| type            | project type                             | maven-project                |
| version         | project version                          | 0.0.1-SNAPSHOT               |
+-----------------+------------------------------------------+------------------------------+

带" HTTPie"工具的Spring Boot示例

像CURL工具一样,HTTPie是一个命令行HTTP客户端,它使用简单的命令来引导Spring Boot应用程序。
这是一个基于JSON的人性化工具。
它主要用于测试,调试和与HTTP Web服务或者Web服务器交互。

Httpie官方:https://github.com/jkbrzt/httpie

" HTTPie"工具设置

  • 从" https://www.python.org/downloads/"下载最新的Python Windows Installer并进行安装。

我已经安装了Python 2.7,如下所示。
使用zip文件安装非常容易。
如果您使用Windows Installer,则只需按照默认设置进行安装即可。

  • 从" https://pip.pypa.io/en/latest/installing.html#install-pip"下载" get-pip.py"

只需鼠标右键单击并另存为所需的文件系统路径:

  • 使用以下命令安装" pip"
python get-pip.py
  • 使用以下命令安装" httpie"工具
python -m pip install --upgrade httpie

" HTTPie"示例

示例1:-创建默认的Spring Boot项目

python -m httpie https://start.spring.io/starter.zip -d

它使用默认设置创建一个新的Spring Boot项目,例如:创建项目文件名为" demo.zip",构建工具为" Maven"。
它从系统变量中获取默认的Java版本和Spring Boot Framework版本。

示例2:-创建带有Gradle构建工具所需依赖项的Spring Boot WebAppilcation(war)项目

python -m httpie https://start.spring.io/starter.zip 
       dependencies==web,data-jpa,jms,ws
       type==gradle-project
       packaging==war
       -d

它使用Spring MVC,Spring DATA JPA,Spring JMS,Spring WS Capabilities创建一个Gradle项目。

注意:其中我们应该注意,我们需要在参数或者选项名称与值之间使用双等号,例如" =="。

我们可以参考"卷曲工具"部分以了解受支持的"依赖项","参数"和构建工具选项的列表。
HTTPIE和Curl工具共享相同的选项和参数。