1.2.1 使用Spring官方提供的初始化工具
Spring提供了Initializr工具,这是一个可视化界面,用来构建项目初始环境,如图1.1所示。
Initializr工具分为6个模块,下面一一说明。
1.选择项目构建工具
这里有Maven和Gradle可选,Maven是比较经典的构建工具,不过Gradle变得越来越流行。两种工具管理的项目文件目录结构不同,配置文件也不同,在开发时可根据开发习惯和项目需要来选择,本书所有示例均以Maven为准。
图1.1 Spring Initializr
2.选择编程语言
这里提供了Java、Kotlin和Groovy,根据实际开发需要选择即可。Web后端开发一般选择Java。
3.选择Spring Boot的版本
此时GA版本为2.4.4,通常不会选择快照版(SNAPSHOT)。读者可在网站https://spring.io/projects/spring-boot#learn上查看当前版本,如图1.2所示。
图1.2 Spring Boot版本
4.项目元信息
这里我们更多关注的是Group和Artifact,它们分别对应groupId和artifactId。Package Name用来指定程序启动类所在的包名,也是代码最外层的包名,默认使用Group.Artifact,也可以修改。还可以指定打包方式和JDK版本。打包方式有JAR和WAR,分别是打成JAR包和WAR包。
5.选择依赖
单击按钮ADD DEPENDENCIES,打开如图1.3所示的窗口,为项目配置框架依赖。选中的依赖会写入配置文件中,待项目在开发环境中构建时自动下载JAR包。在图1.1中,已选择Spring Web、MySQL Driver和MyBatis这3个框架。
图1.3 浏览器发出的请求Body内容
6.工具栏
工具栏有3个按钮:单击GENERATE按钮,可将初始化的项目目录和配置文件打包成artifactId.zip文件并下载;单击EXPLORE按钮,可预览项目目录和配置文件,如图1.4所示;单击SHARE按钮,生成可供分享的链接,如图1.5所示。我们单击GENERATE按钮,将demo.zip保存到本地。
图1.4 预览项目
图1.5 Spring Initializr的分享功能
7.查看文件结构
压缩包中只包含配置文件和项目目录结构,大小仅有56KB。将demo.zip解压,demo目录如图1.6所示。
其中,src是源代码和配置文件的目录,pom.xml是项目的Maven配置目录,这是我们所关心的。其余的.mvn、HELP.md、mvnw和mvnw.cmd是提供给Maven程序的目录,.gitgnore用来配置git忽略策略的文件,这些我们通常不用关心。
使用命令“tree /f src”查看src目录结构,如图1.7所示。
图1.6 Initializr生成的目录结构
图1.7 src目录结构
src目录有两个子目录,即main和test。test目录用来存放测试代码,DemoApplicationTest.java是Spring生成的一个Test类。通过Maven配置可以在打包时忽略test目录下的代码。
main目录也有两个子目录,即java和resources。顾名思义,java目录下是JAR包和代码文件,其中的DemoApplication.java是Spring生成的程序启动类。
resources目录下存放配置文件和静态资源。此处由于在选择依赖时勾选了Spring Web框架,Spring Initializr除了生成配置文件application.properties外,还额外生成了static和templates目录,分别用来存放静态资源(如图片、CSS文件)和页面。