这篇来点轻松的话题,谈谈 Spring Boot 项目快速创建的 3 种方式,这是开发 Spring Boot 项目的第一步。
这里我将创建 Spring Boot 项目的方式大致分为手动和自动两种,手动是指依赖、基本的项目结构及代码通过手工编码的方式完成,自动则是指利用工具自动引入依赖、生成项目结构和代码。
手动
手动创建 Spring Boot 项目对于一些经验相对丰富的开发人员来说是一个不错的选择,可以随意定制需要的模块,由于 Spring Boot 的项目结构大体相同,因此也能在两三分钟内搭建一个项目。
创建一个 Spring Boot 项目需要关注的内容包括依赖管理工具、使用的 JVM 语言、 Spring Boot 版本号、坐标信息、 包名、打包方式、JDK 版本号、依赖等等。
对于有经验的开发人员,上述的内容基本是固化的,使用的依赖管理工具为 maven,选用目前比较流行的版本 2.2.x 或 2.3.x,使用的语言为 Java,坐标及包名则与具体的项目有关,打包方式自然为 jar,JDK 版本号使用目前比较常用的 JDK 8,依赖项 web 一般是必选的,其他则依据项目来。
根据上述信息,我们可以利用 IDE 提供的功能轻松的创建出一个基于 maven 的 Spring Boot 项目,以常用 IDE Intellij Idea 为例,首先选择创建项目菜单。
然后选择 maven 项目,并指定 JDK 版本号。
然后指定项目名称、项目位置、坐标信息即可创建一个 maven 项目。
创建后的项目结构及 pom 文件内容如下。
然后编辑 pom 文件,引入 Spring Boot 相关内容即可。
pom 文件内容添加的内容主要包括三部分,首先是指定了打包方式为 jar,然后指定了 parent 用于管理依赖版本,然后指定一些 Spring Boot 相关的 starter 以启用某些功能,最后还添加了一个 Spring Boot 的插件将项目打成可执行的 jar 包。
对于 pom 文件的编辑,坐标是最大的问题,不过 Spring Boot 依赖的坐标有一定的规律,首先 groupId 的值统一为 org.springframework.boot,然后官方提供的 starter 的 artifactId 的值会以 spring-boot-starter 开头,只有插件的 artifactId 值需要稍作留意。
最后再手动建好我们项目的包名,指定一个启动类就把整个项目搭建完成啦。
是不是很简单呢?
自动
自动代码生成主要依据 Spring 官方提供的 Spring Initializr 项目,这个项目能够根据用户的配置生成一个完整的 Spring Boot 项目代码,也提供了查询可选配置的 API。
将这个项目的 jar 包作为依赖添加到我们自己的项目,然后就可以通过编程的方式生成 Spring Boot 项目代码了,不过这显然增加了我们的学习成本,也不是本篇重点介绍的内容。
Spring Initializr 主要有两个应用场景,一个是通过 Web 可视化界面的方式从可选配置中定制化我们自己的 Spring Boot 项目,另一个是通过主流 IDE 自带的方式选择配置创建我们自己的 Spring Boot 项目。
Web 代码生成
对于 Web 可视化界面,主要通过 Spring 官方提供的页面操作,网址为 https://start.spring.io/,打开网址可以看到如下的页面。
可以看到,我们常用的配置都在上面了,和我们自己创建 maven 项目的过程基本一致,左侧是一些项目的基本信息,右侧是依赖项的操作区。点击右侧的 ADD DEPENDENCIES
按钮可以看到如下页面。
Spring 官网将可选的依赖项进行了分组,这里选中我们需要的 Spring Web
模块,然后再编辑项目基本信息就可以下载 Spring Boot 为我们创建好的项目文件了。
点击生成项目文件按钮 GENERATE
右侧的浏览按钮 EXPLORE
我们还可以预览生成的 Spring Boot 项目代码。
是不是很神奇呢?
IDE 代码生成
不过我们一般是通过 IDE 创建项目的,对于常用的 IDE 包括 Intellij Idea、Eclipse 都提供了使用 Spring Initializr 创建项目的功能,这也是我们最常使用的一种创建 Spring Boot 项目的方式。
继续以 Intellij Idea 为例,点击创建项目菜单,并选中 Spring Initializr 选项,可以看到如下的界面。
这个页面同时还可以编辑 Spring Initializr 的服务器,因为不同的服务器提供的是相同的 HTTP 接口,只是提供的配置项有所不同,例如我们可以将 Server URL 修改为阿里的 http://start.aliyun.com,这可以使得我们在后面的配置项中选择 Spring Cloud Alibaba 相关依赖。
不过这里我们还是保持默认吧,点击 Next,勾选需要的依赖项,即可创建一个 Spring Boot 项目。
是的,这样就结束了,这种方式真的是超简单。
总结
本篇主要介绍了创建 Spring Boot 项目常用的 3 种方式,包括手动创建 maven 项目并进行配置,自动通过 Web 或 IDE 的方式使用 Spring Initializr 创建 Spring Boot 项目,最为推荐的还是 IDE。
创建项目只是使用 Spring Boot 的第一步,一般情况我们在创建项目时都会指定一个 Spring Boot 提供的 parent 用于依赖管理,如果我们定义了自己的 parent 则只能通过引入 spring-boot-dependencies 的方式管理依赖,这两者有何区别呢?将在下篇进行揭晓。