Spring Initializr
创建 SpringBoot 项目我们以常用的 IDEA 集成开发工具为例,介绍如何使用 Spring Initializr
创建 SpringBoot 项目。
1)打开新工程创建面板
选择 File -> NEW -> Project...
,打开创建新工程面板,选择 Spring Initializr
选项,在右侧面板选项选择我们项目使用的 JDK 版本,Starter 的服务地址选择默认的官方地址:
2)配置项目信息
点击下一步到了新项目的信息配置面板,在这里配置:项目所属组、项目名称、项目构建类型(Maven 或 Gradle)、项目的打包形式(Jar 或 War)、项目描述、包名等项目信息。
这里需要注意的是:项目所属组名是用于管理项目,同一个组下不用有相同的项目名,而包名(Package)则是我们项目的文件组织形式。
3)选择 SpringBoot 版本和项目的依赖组件
点击下一步就到了项目创建的最后一步,在这里选择项目的 SpringBoot 版本和一些项目常用的依赖组件(比如 Lombok 组件):
一般面板上提供的 SpringBoot 版本都比较新,我们也可以在创建项目后去 POM 文件上修改为其它版本,选择完后点击完成按钮即可完成项目的创建。
POM
文件结构解析1)创建成功后的 POM
文件内容
通过 Spring Initializr 创建 SpringBoot 项目成功后的 pom.xml 文件内容信息如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion>
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>2.2.1.RELEASEversion>
<relativePath/>
parent>
<groupId>com.examplegroupId>
<artifactId>demoartifactId>
<version>1.0.0-SNAPSHOTversion>
<name>demoname>
<description>Demo project for Spring Bootdescription>
<properties>
<java.version>1.8java.version>
properties>
<dependencies>
<dependency>
<groupId>org.projectlombokgroupId>
<artifactId>lombokartifactId>
<optional>trueoptional>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-testartifactId>
<scope>testscope>
dependency>
dependencies>
project>
2)POM 内容结构解析
xml
文件的标准开头行,配置了版本和编码信息;
标签就是项目工程的核心信息,里面配置了坐标信息,由于我们使用的是 Maven 进行构建,所以这些就是 Maven 相关坐标信息,同时使用
标签标明了 Maven 模板的版本号;https://start.spring.io/
),而官方是通过
标签让项目继承 spring-boot-starter-parent
的方式让项目成功一个 SpringBoot 项目的;spring-boot-starter-test
这个测试组件,同时在组件面板选择的组件都默认为最新版本,我们也可以自己修改组件的版本号。在 Spring Initializr 面板中如果选择默认的 Starter 服务地址(即 https://start.spring.io
)时,可能会出现官网连接不上的情况,报错如下:
Initialization failed for 'https://start.spring.io' Please check URL, network and proxy settings......
解决方案:
https://start.aliyun.com/
选择阿里云官网地址的具体操作如图:
后面的操作步骤基本和官方提供的一致,但创建成功后的 POM 文件内容会有点不同:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion>
<groupId>com.examplegroupId>
<artifactId>demoartifactId>
<version>0.0.1-SNAPSHOTversion>
<name>demoname>
<description>Demo project for Spring Bootdescription>
<properties>
<java.version>1.8java.version>
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding>
<spring-boot.version>2.2.10.RELEASEspring-boot.version>
properties>
<dependencies>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starterartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-testartifactId>
<scope>testscope>
dependency>
dependencies>
project>
最大的不同点在于:阿里云是通过在依赖中引入 spring-boot-starter
来标明项目是以 SpringBoot 的形式来运作的。
通过 Spring Initializr 创建 SpringBoot 项目的结果可知,其实就是通过对项目的 POM 文件进行配置来使项目以 SpringBoot 的形式运行而不是以普通 Maven 项目的形式运行。那么,反过来,我们也可以通过创建一个普通 Maven 项目并修改 POM 文件的形式来创建一个 SpringBoot 项目。
具体创建步骤如下:
1)创建 Maven 工程
在新建工程面板上选择 Maven 选项,同时勾选 Create from archetype
,然后选择 maven-archetype-quickstart
模板:
2)配置项目信息
点击下一步后来到了项目配置信息面板,设置如下:
3)设置 Maven 配置信息
点击下一步来到了 Maven 配置信息面板,一般都会选择自定义的 Maven 信息:
4)修改 POM 文件
创建 Maven 项目成功后,将 pom.xml
上的信息删除掉,只剩下基本的坐标信息和项目信息:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion>
<groupId>com.examplegroupId>
<artifactId>demoartifactId>
<version>1.0.0-SNAPSHOTversion>
<name>demoname>
project>
然后仿照 Spring 官方例子添加 SpringBoot 的
标签,具体使用的 SpringBoot 版本可以自己设置:
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>2.2.1.RELEASEversion>
<relativePath/>
parent>
配置完成后就可以点击 Maven 依赖的解析按钮来导入相应的依赖。这样就完成了一个 SpringBoot 项目的创建,其它的依赖组件可以自定义引入,这里就不多讲述了。
使用框架开发前,我们都需要了解版本的兼容性问题:
凡是在开发项目过程中使用的插件、服务器、项目依赖管理器等等,都要考虑和项目的兼容性,以及本身内部之间的兼容性(
jar
包之间的兼容性)。
1)登录 SpringBoot 官网:https://spring.io/projects/spring-boot,选择 LEARN 面板:
2)以最新的第一个版本为例,点击 Reference Doc 连接按钮,来到参考文档页面,选择 Getting Started:
3)在文档开始页面中选择 System Requirements 查看当前 SpringBoot 版本的系统依赖:
我们可以看到这个版本的依赖为:
这些就是运行当前 SpringBoot 版本项目所需的要求,如果环境版本过低就可能会导致不兼容问题。
查看所有 SpringBoot 版本的地址为:https://docs.spring.io/spring-boot/docs/,具体的文档查看路径为:{version} -> reference,里面可以选择 pdf、html 等多种形式进行查看。