![Spring Boot从入门到精通](https://wfqqreader-1252317822.image.myqcloud.com/cover/448/52842448/b_52842448.jpg)
2.1 使用Eclipse编写第一个Spring Boot程序
2.1.1 在Spring官网上生成初始项目文件
Spring官方提供了一个自动创建Spring Boot项目的网页,可以为程序开发人员省去大量的配置操作。使用该网页创建Spring Boot项目的步骤如下。
(1)打开浏览器,输入网址https://start.spring.io,在这个页面中填写项目各种配置和基本信息,具体内容如图2.1所示,矩形框里的文字是笔者给出的标注。
在图2.1中,含有很多标签,例如Project、Language、Spring Boot、Project Metadata下的Group等。那么,这些标签表示的含义是什么呢?各个标签的说明如下:
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P38_96234.jpg?sign=1739455523-krgnQNwQgNQuuE5CiJn6U327jswMLpsr-0-325ffc3efffa8d6458a9d3b5a7f6d94e)
图2.1 填写Spring Boot项目的相关内容
Project:表示创建什么类型的项目。书中使用Maven作为项目构建工具,所以这里选择Maven Project,也就是Maven项目。
Language:表示使用哪种开发语言。这里选择Java。
Spring Boot:表示使用哪个版本的Spring Boot。SNAPSHOT表示仍在开发过程中的试用版,RELEASE表示稳定版,表单中未做任何标注的版本则认为是RELEASE稳定版,因此选择最新的稳定版本2.7.5。
说明
Spring官方一直在不断更新Spring Boot,读者打开网站时看到的稳定版本可能会高于2.7.5,可以下载最新的稳定版本。
Project Metadata下的Group:这是开发团队或公司的唯一标志。命名规则通常为团队/公司主页域名的转置,例如域名为www.mr.com,Group就应该写成com.mr,忽略域名前缀。
Project Metadata下的Artifact:表示项目的唯一ID。因为同一个团队下可能有多个项目,这个ID就是用来区分不同项目的。图中填写的是MyFirstSpringBootProject。
Project Metadata下的Name:项目的名称,也是导入Eclipse之后看到的项目名。图中填写的是MyFirstSpringBootProject。
Project Metadata下的Description:项目的描述。对于学习者来说使用默认值即可。
Project Metadata下的Package name:用于指定Spring Boot的底层包,也就是Spring Boot启动类所在的包。图中填写的是com.mr。
Project Metadata下的Packaging:表示项目以哪种格式打包。项目如果打包成jar包,可以直接在JRE环境中启动运行;如果打包成War文件,可以直接部署到服务器容器中。这里推荐大家打包成jar包,便于学习。
Project Metadata下的Java:用于指定项目使用哪个版本的JDK,这里选择JDK 19。
(2)因为Spring Boot主要用于Web项目开发,所以还需要给项目添加Web依赖。单击页面右侧的ADD DEPENDENCIES按钮,列出可选的依赖项。按钮的位置如图2.2所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P39_96238.jpg?sign=1739455523-xu9Oi1MlhG5cpjjRenc8rfa9p0rkcZX2-0-b94cf3f5a529f1950ac5a656617e49e4)
图2.2 为项目添加依赖
(3)在列出的如图2.3所示的依赖项中,找到并单击Spring Web选项。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P39_96239.jpg?sign=1739455523-5nYRyoiZ0CiMsrU35FwaV4UrBOEso8ce-0-45e78b68c700ee08996e0cfd4b1936db)
图2.3 选择Spring Web依赖
(4)完成以上操作,在如图2.4所示的页面的右侧可以看见已经添加的Spring Web依赖。单击页面下方的GENERATE按钮,下载自动生成的项目压缩包。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P40_96241.jpg?sign=1739455523-WGhjPLJQ03e9mYe2WqzIfwIrtCGFMNYg-0-517e51f8b81bb59a8282086bf6a3b096)
图2.4 生成并下载初始项目
(5)如图2.5所示,在D盘根目录下,新建一个名为SpringBootProject的文件夹,将下载好的压缩包解压到该文件夹中,这样就完成了初始项目的准备工作。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P40_96242.jpg?sign=1739455523-N4UTufqY9S14BicO511Gd2PzzTo3zTrG-0-f092f3b30c286eb74ebecc01c2f0a51f)
图2.5 解压项目压缩包
2.1.2 Eclipse导入Spring Boot项目
Eclipse支持导入Maven项目,不过导入Maven项目的方式与导入普通Java项目不太一样,本节将演示Eclipse导入Maven项目的步骤。
(1)依次选择File/Import菜单,如图2.6所示。在导入的类型中,选择Maven菜单下的Existing Maven Projects子菜单,单击Next按钮,如图2.7所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P41_96243.jpg?sign=1739455523-Al0jOKxrer1zmbF6eg0z4bQmh2XQXXye-0-c0ec60b5df76be08843d6cba7bcd1b78)
图2.6 导入菜单
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P41_96244.jpg?sign=1739455523-7yUs881GHEl5TRvnkxirZWOdyTCoGmGk-0-a1d40cde48564d8735ce985eae85659d)
图2.7 选择已存在Maven项目
(2)在弹出的对话框中,单击右侧的Browse按钮,如图2.8所示。找到上一节下载并解压完毕的项目目录,项目目录确认成功后,单击下方的Finish按钮完成导入,如图2.9所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P41_96245.jpg?sign=1739455523-ix3DhlUDgwhwuudyVFXnzBTFnn0zNF4M-0-6804669f57bb66413006ac516824b7a1)
图2.8 找到项目所在目录
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P41_96246.jpg?sign=1739455523-wWtOfJn1kJvsaoeFmeTG5asX8hqdAhdx-0-fdf96bf510b00301880200495ecc387a)
图2.9 确认导入
(3)导入完成后,Eclipse会自动启动Maven下载jar包的操作,此时Eclipse右下方出现一个滚动条,显示下载进度,程序开发人员可以单击滚动条右侧的图标查看下载明细,如图2.10所示。
导入之后的项目结构如图2.11所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P42_96249.jpg?sign=1739455523-FUrkDgtcPBEjGqpHcmTalARoQMgIgfZV-0-0e8ffef709865a583f6dd2c8e05a785b)
图2.10 Maven自动下载jar包
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P42_96250.jpg?sign=1739455523-QyMo6R1UzmuDlphf2tCPxbqE2pCrMhm2-0-a3009f028b732f1375eb9e2aef50ec0c)
图2.11 初始项目的文件结构
2.1.3 编写简单的跳转功能
Spring Boot自带Tomcat容器,无须部署项目就可以直接启动Web服务。下面将演示如何编写一个简单的跳转功能,当用户访问一个网址后,页面会展示一段程序开发人员自己编写的文字。
(1)首先在com.mr包下创建子包controller,然后在该子包中创建名为HelloController的类,如图2.12所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P43_96251.jpg?sign=1739455523-mI4P6XgSJH0nlXgTS7kjh2gb6LlC1KsY-0-7fcda7333e621a53b49399544d3f1b6a)
图2.12 创建的类所在的位置
(2)打开该类文件,补充以下代码:
package com.mr.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { @RequestMapping("hello") public String sayHello() { return "你好,这是我的第一个Spring Boot项目"; } }
(3)运行com.mr包下的MyFirstSpringBootProjectApplication.java文件(即项目的启动类),可以在控制台中看到如图2.13所示的启动日志。其中,日志“Started MyFirstSpringBootProjectApplication in 3.045 seconds”表示项目启动成功,耗时3.045秒,这样就可以在浏览器里访问Web服务了。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P43_96252.jpg?sign=1739455523-GK6KbXWjtPhzNHTWdukCwBCvifPAV0w6-0-b5d53cd096eacd6befcb4ed6cfde3e6d)
图2.13 项目的启动日志
打开浏览器,访问http://127.0.0.1:8080/hello地址,就可以在页面中看到代码返回的字符串,如图2.14所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P43_96254.jpg?sign=1739455523-9FIcNBsBZpHfsDXdhjK2s180BFBX7eY1-0-883f3322216f77b8964b9019576c741f)
图2.14 在浏览器中访问得到的结果
2.1.4 测试工具——Postman
Postman是一款功能强大的网络接口测试工具,它可以模拟各种网络场景,发送各式各样的请求。Spring Boot是一个专门编写服务器接口的框架,一些特殊场景很难用前端页面模拟,因此推荐使用Postman来完成复杂场景的测试工作。本节将对Postman的下载、启动和使用进行详解。
下载Postman的步骤如下。
(1)打开浏览器,输入https://www.Postman.com/downloads/地址,网页会自动识别你的操作系统,给出适合操作系统的安装包。如图2.15所示,单击左侧的Windows 64-bit按钮。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P44_96256.jpg?sign=1739455523-KQG7tAIZGLaNlyzZMY7X7XckfsVz9YJN-0-f352f407c0d81802c5bcb8595432d448)
图2.15 Postman下载页面
(2)下载完成之后,双击安装包,软件会自动安装。安装完成后会在桌面生成如图2.16所示的快捷图标。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P44_51395.jpg?sign=1739455523-Sst2c1nraJXxzMcbtwX6nGV5dCiLbz5J-0-5c01aec473f3916087eb69054c88a00c)
图2.16 桌面上的Postman快捷图标
启动Postman的步骤如下。
(1)双击Postman快捷图标打开Postman后,如果弹出用于提示用户登录或注册的对话框,就单击skip and go to the app超链接,跳过登录。
(2)对话框显示如图2.17所示的主界面后,单击New按钮,创建新的连接测试。
(3)在弹出的如图2.18所示的对话框中,选择HTTP Request连接类型。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P45_96257.jpg?sign=1739455523-Wqa86BQlg1417xDEXAVLzrPTqN5UQRAE-0-575515835a0abd41d9e77e759cf392a0)
图2.17 创建新的连接测试
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P45_96258.jpg?sign=1739455523-0YYNvcgtWTTE3ycGXEAWaAN8Ggxzd2kE-0-92374d7315aca505377d972256f9dd27)
图2.18 选择HTTP Request连接
(4)回到如图2.19所示的主界面后,程序开发人员需要先在功能面板中填写要访问的URL地址,再设置请求类型、请求参数等,单击Send按钮即可向服务器发送一条请求。服务器返回的内容会在面板底部展示。
使用Postman的方式如下:要使用Postman测试第一个Spring Boot程序中的连接,只需先在URL的位置填写http://127.0.0.1:8080/hello,再单击右侧的Send按钮,即可在底部可看到服务器返回的结果,如图2.20所示。不难发现,图2.20所示的结果与图2.14所示的用户在浏览器上看到的内容相同。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P46_96260.jpg?sign=1739455523-KeV5I1F4UooClLarNgKHAPGksKba1CJr-0-52429478c04aabe6c8e633183b6fad89)
图2.19 发送请求的功能面板
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P46_96261.jpg?sign=1739455523-18PXMjMP8SjJz5ubG2uD144v805dTABT-0-65433a9b275692efab346a33fd1330dc)
图2.20 使用Postman发送请求后得到的结果
2.1.5 打包项目
Spring Boot可以将所有依赖都打包到一个jar包中,只需要执行这个jar包就可以启动完整Spring Boot项目。这为程序开发人员省去了不少配置和部署的工作。本节介绍如何在Eclipse环境中为Spring Boot项目打包。步骤如下。
(1)在项目上单击鼠标右键,依次选择Run As/Maven install菜单,位置如图2.21所示。选择之后Maven会自动下载并打包所需的jar包。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P47_96263.jpg?sign=1739455523-GtwaJNYF8GPWhQWS5gsOfdkH9P7CxPJ0-0-a26c77a6aa946bbd0df20dd3667ee60e)
图2.21 使用Maven的打包功能
(2)打包时控制台会打印大量日志,当打包程序结束时,日志中出现如图2.22所示的BUILD SUCCESS字样,表示打包成功。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P47_96264.jpg?sign=1739455523-hg7zD1Dh1lzxSMvLIAFKzRud8PBbQ8H0-0-b626ef2208b45a8c7a917c3632beb8a2)
图2.22 打包成功日志
(3)在项目上单击鼠标右键,在弹出的快捷菜单中选择ReFresh(或按F5键)刷新项目,就可以在target文件夹下看到很多文件,其中MyFirstSpringBootProject-0.0.1-SNAPSHOT.jar包就是本项目打包生成的执行文件,位置如图2.23所示。
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P48_96266.jpg?sign=1739455523-stqmqcmG3DH6TwhS4jQAYAmtSoU6Xnlm-0-e8becb2ee10e57d22dc8de170d408344)
图2.23 项目打包生成的jar包
(4)将这个jar包保存到D盘根目录,再打开“命令提示符”对话框,输入以下命令:
d: java -jar MyFirstSpringBootProject-0.0.1-SNAPSHOT.jar
![](https://epubservercos.yuewen.com/A7BDC3/31398043607389606/epubprivate/OEBPS/Images/Figure-P48_96267.jpg?sign=1739455523-X6iCCpeoPUeFRq5PH9ZHGvLIvuhfoulR-0-8a1644b48d0c1832690fa05e1f3d0a45)
图2.24 在“命令提示符”对话框中启动的效果