我最早是 2016 年底开始写 Spring Boot 相关的博客,当时使用的版本还是 1.4.x ,文章发表在 CSDN 上,阅读量最大的一篇有 43W+,如下图:

2017 年由于种种原因,就没有再继续更新 Spring Boot 相关的博客了,2018年又去写书了,也没更新,现在 Spring Boot 最新稳定版是 2.1.7 ,松哥想针对此写一个系列教程,专门讲 Spring Boot2 中相关的知识点。这个系列,就从本篇开始吧。

Spring Boot 介绍

我们刚开始学习 JavaWeb 的时候,使用 Servlet/JSP 做开发,一个接口搞一个 Servlet ,很头大,后来我们通过隐藏域或者反射等方式,可以减少 Servlet 的创建,但是依然不方便,再后来,我们引入 Struts2/SpringMVC 这一类的框架,来简化我们的开发 ,和 Servlet/JSP 相比,引入框架之后,生产力确实提高了不少,但是用久了,又发现了新的问题,即配置繁琐易出错,要做一个新项目,先搭建环境,环境搭建来搭建去,就是那几行配置,不同的项目,可能就是包不同,其他大部分的配置都是一样的,Java 总是被人诟病配置繁琐代码量巨大,这就是其中一个表现。那么怎么办?Spring Boot 应运而生,Spring Boot 主要提供了如下功能:

  1. 为所有基于 Spring 的 Java 开发提供方便快捷的入门体验。
  2. 开箱即用,有自己自定义的配置就是用自己的,没有就使用官方提供的默认的。
  3. 提供了一系列通用的非功能性的功能,例如嵌入式服务器、安全管理、健康检测等。
  4. 绝对没有代码生成,也不需要XML配置。

Spring Boot 的出现让 Java 开发又回归简单,因为确确实实解决了开发中的痛点,因此这个技术得到了非常广泛的使用,松哥很多朋友出去面试 Java 工程师,从2017年年初开始,Spring Boot基本就是必问,现在流行的 Spring Cloud 微服务也是基于 Spring Boot,因此,所有的 Java 工程师都有必要掌握好 Spring Boot。

系统要求

截至本文写作(2019.09),Spring Boot 目前最新版本是 2.1.7,要求至少 JDK8,集成的 Spring 版本是 5.1.9 ,构建工具版本要求如下:

Build ToolVersionMaven3.3+Gradle4.4+

内置的容器版本分别如下:

NameVersionTomcat 9.04.0Jetty 9.43.1Undertow 2.04.0

三种创建方式

初学者看到 Spring Boot 工程创建成功后有那么多文件就会有点懵圈,其实 Spring Boot 工程本质上就是一个 Maven 工程,从这个角度出发,松哥在这里向大家介绍三种项目创建方式。

在线创建

这是官方提供的一个创建方式,实际上,如果我们使用开发工具去创建 Spring Boot 项目的话(即第二种方案),也是从这个网站上创建的,只不过这个过程开发工具帮助我们完成了,我们只需要在开发工具中进行简单的配置即可。

首先打开 https://start.spring.io 这个网站,如下:

这里要配置的按顺序分别如下:

  • 项目构建工具是 Maven 还是 Gradle ?松哥见到有人用 Gradle 做 Java 后端项目,但是整体感觉 Gradle 在 Java 后端中使用的还是比较少,Gradle 在 Android 中使用较多,Java 后端,目前来看还是 Maven 为主,因此这里选择第一项。
  • 开发语言,这个当然是选择 Java 了。
  • Spring Boot 版本,可以看到,目前最新的稳定版是 2.1.7 ,这里我们就是用最新稳定版。
  • 既然是 Maven 工程,当然要有项目坐标,项目描述等信息了,另外这里还让输入了包名,因为创建成功后会自动创建启动类。
  • Packing 表示项目要打包成 jar 包还是 war 包,Spring Boot 的一大优势就是内嵌了 Servlet 容器,打成 jar 包后可以直接运行,所以这里建议打包成 jar 包,当然,开发者根据实际情况也可以选择 war 包。
  • 然后选选择构建的 JDK 版本。
  • 最后是选择所需要的依赖,输入关键字如 web ,会有相关的提示,这里我就先加入 web 依赖。

所有的事情全部完成后,点击最下面的 GenerateProject 按钮,或者点击 Alt+Enter 按键,此时会自动下载项目,将下载下来的项目解压,然后用 IntelliJ IDEA 或者 Eclipse 打开即可进行开发。

使用开发工具创建

有人觉得上面的步骤太过于繁琐,那么也可以使用 IDE 来创建,松哥这里以 IntelliJ IDEA 和 STS 为例,需要注意的是,IntelliJ IDEA 只有 ultimate 版才有直接创建 Spring Boot 项目的功能,社区版是没有此项功能的。

IntelliJ IDEA

首先在创建项目时选择 Spring Initializr,如下图:

然后点击 Next ,填入 Maven 项目的基本信息,如下:

再接下来选择需要添加的依赖,如下图:

勾选完成后,点击 Next 完成项目的创建。

STS

这里我再介绍下 Eclipse 派系的 STS 给大家参考, STS 创建 Spring Boot 项目,实际上也是从上一小节的那个网站上来的,步骤如下:

首先右键单击,选择 New -> Spring Starter Project ,如下图:

然后在打开的页面中填入项目的相关信息,如下图:

这里的信息和前面提到的都一样,不再赘述。最后一路点击 Next ,完成项目的创建。

Maven 创建

上面提到的几种方式,实际上都借助了 https://start.spring.io/ 这个网站,松哥记得在 2017 年的时候,这个网站还不是很稳定,经常发生项目创建失败的情况,从2018年开始,项目创建失败就很少遇到了,不过有一些读者偶尔还是会遇到这个问题,他们会在微信上问松哥这个问题腰怎么处理?我一般给的建议就是直接使用 Maven 来创建项目。步骤如下:

首先创建一个普通的 Maven 项目,以 IntelliJ IDEA 为例,创建步骤如下:

注意这里不用选择项目骨架(如果大伙是做练习的话,也可以去尝试选择一下,这里大概有十来个 Spring Boot 相关的项目骨架),直接点击 Next ,下一步中填入一个 Maven 项目的基本信息,如下图:

然后点击 Next 完成项目的创建。

创建完成后,在 pom.xml 文件中,添加如下依赖:

org.springframework.boot spring-boot-starter-parent 2.1.7.RELEASEorg.springframework.boot spring-boot-starter-web 

添加成功后,再在 java 目录下创建包,包中创建一个名为 App 的启动类,如下:

@EnableAutoConfiguration@RestControllerpublic class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } @GetMapping("/hello") public String hello() { return "hello"; }}

@EnableAutoConfiguration 注解表示开启自动化配置。

然后执行这里的 main 方法就可以启动一个 Spring Boot 工程了。

项目结构

使用工具创建出来的项目结构大致如下图:

对于我们来说,src 是最熟悉的, Java 代码和配置文件写在这里,test 目录用来做测试,pom.xml 是 Maven 的坐标文件,就这几个。

总结

本文主要向大家介绍了三种创建 Spring Boot 工程的方式,大家有更6的方法欢迎来讨论。

搜索关注微信公众号 江南一点雨,后台回复 Java ,领取松哥为你精心准备的Java干货!江南一点雨专注于前后端分离,Java微服务等技术分享,都是 松哥原创技术干货!

maven web项目导入sts_Spring Boot2 系列教程(二)创建 Spring Boot 项目的三种方式相关推荐

  1. Spring系列教程八: Spring实现事务的两种方式

    2019独角兽企业重金招聘Python工程师标准>>> 一. Spring事务概念: 事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败的 ...

  2. druid 手动指定数据源_Spring Boot2 系列教程(二十)整合JdbcTemplate 多数据源

    多数据源配置也算是一个常见的开发需求,Spring 和 SpringBoot 中,对此都有相应的解决方案,不过一般来说,如果有多数据源的需求,我还是建议首选分布式数据库中间件 MyCat 去解决相关问 ...

  3. Idea创建Spring Boot项目超时失败的解决方案及Maven改SpringBoot

    前言 说起IntelliJ IDEA 可谓是作为一名开发者必须知道的神器了,便捷高效,但不知道是升级了新的Idea软件,还是网络不通畅缘故,笔者这两天老遇到一个创建超时的问题. 用 IDEA 创建 S ...

  4. 如何使用Spring初始化程序创建Spring Boot项目

    你好朋友, 如果您以前使用过Spring框架,则必须意识到,即使要开始使用基本的Spring功能也需要付出一些真正的努力.有了Spring Boot,最初的麻烦就消失了,您可以在数分钟内开始使用. 欢 ...

  5. 5分钟学会如何创建spring boot项目

    上一篇博客说了如何创建spring boot项目,但是有些同学会觉得有点麻烦,有没有什么快速学会能快速创建spring boot项目的方法,答案是肯定的.接下来我们就一起来快速创建一个spring b ...

  6. eclipse创建springboot项目_Spring Initializer+IntelliJ IDEA创建Spring Boot项目(图文)

    在本文中,将介绍如何使用Spring Initializer快速创建一个简单的Spring Boot项目.Spring Initializer是由Spring团队开发的一个优秀工具,通过使用它,你可以 ...

  7. 如何在STS中创建Spring Boot项目

    你好朋友, 在本教程中,我们将逐步介绍如何在STS(Spring工具套件)中创建Spring Boot项目. 步骤1: 如果您尚未从相应的操作系统的以下链接中下载Spring工具套件,请下载: htt ...

  8. java5分钟项目讲解_5分钟快速创建spring boot项目的完整步骤

    前言 上一篇博客说了如何创建spring boot项目,但是有些同学会觉得有点麻烦,有没有什么快速学会能快速创建spring boot项目的方法,答案是肯定的.接下来我们就一起来快速创建一个sprin ...

  9. [spring]用IEDA创建spring boot项目

    目录 1.环境准备 2.Maven配置环境变量 3.在 idea 配置 maven 4.idea安装springboot插件 5.创建spring boot项目 6. 打包spring boot项目 ...

最新文章

  1. 1.ireport基本使用
  2. 三大运营商集体为电费发愁,宣布“智能化关闭5G基站”,5G建设能省则省!
  3. 成长的速度一定要超过父母老去的速度
  4. php json对象取数据类型,PHP如何科学地json_encode类对象数据
  5. Failed to get convolution algorithm.This is probably because cuDNN failed to initialize
  6. 处理字符串_6_拆分字符串里的字符和数
  7. zookeeper教程
  8. 工业三防手持终端如何选
  9. uva 11572 ——Unique Snowflakes
  10. Oracle PL/SQL匿名块(三)
  11. 十年技术骨干面试被开出一万五薪资,直呼 “这是对我的侮辱”
  12. 面试基操:MQ怎么保障消息可靠性?
  13. Netty 从源码的角度深入剖析 ByteBuffer
  14. 基于JAVA+SpringMVC+MYSQL的博客系统
  15. mysql读写分离实现事务_Mysql读写分离后的事务ce
  16. 《Getting Started with WebRTC》第二章 WebRTC技术介绍
  17. 滑动菜单栏(一)开源项目SlidingMenu的使用
  18. deepin20.7安装mysql8.0.30教程
  19. 面向对象的五个基本原则
  20. python调用pyd失效

热门文章

  1. html内联框上下重叠,如何解决IOS端两个内联块元素无法上下对齐的问题?
  2. VTK:图像映射到颜色用法实战
  3. wxWidgets:wxAuiManagerEvent类用法
  4. boost::multiprecision模块cpp_bin_float_100相关的测试程序
  5. boost::mpl模块实现set相关的测试程序
  6. boost::mp11::mp_all相关用法的测试程序
  7. boost::transform_iterator用法的测试程序
  8. boost::lambda::switch_statement用法的测试程序
  9. boost::histogram::make_profile用法的测试程序
  10. boost::core模块检查显式运算符bool测试程序