Spring Boot从入门到精通
上QQ阅读APP看书,第一时间看更新

2.3 使用IDEA编写第一个Spring Boot程序

通过第1章的学习,已经完成了IDEA的下载、安装和配置。下面将介绍使用IDEA创建Spring Boot项目的步骤。

2.3.1 添加Spring Initializr选项

通过IDEA中的Spring Initializr选项,程序开发人员即可创建Spring Boot项目。只不过,在使用IDEA创建Spring Boot项目之前,需要先向IDEA添加Spring Initializr选项。向IDEA添加Spring Initializr选项的步骤如下。

(1)双击IntelliJ IDEA的图标,打开IntelliJ IDEA后,将看到如图2.37所示的对话框。

图2.37 打开IntelliJ IDEA后弹出的对话框

(2)先单击图2.37中的Plugins,再在搜索框内输入Spring Boot,而后将看到如图2.38所示的用于显示Spring Boot Helper相关信息的对话框。

(3)当单击Spring Boot Helper的Install按钮时,会弹出如图2.39所示的对话框。

(4)单击Accept按钮后,IDEA就会开始下载Spring Boot Helper。待Spring Boot Helper下载完成后,Spring Boot Helper的Install按钮会变为如图2.40所示的Restart IDE按钮。

图2.38 显示Spring Boot Helper相关信息的对话框

图2.39 Third-Party Plugins Privacy Note对话框

(5)单击图2.40中的Restart IDE按钮后,IDEA会弹出如图2.41所示的对话框。单击对话框中的Restart按钮,重启IDEA。

图2.40 Spring Boot Helper的Install按钮会变为Restart IDE按钮

图2.41 单击Restart按钮

说明

Spring Boot Helper虽然当下是付费的第三方插件,但是可以免费试用30天。

(6)待IDEA重启后,会弹出如图2.42所示的Licenses对话框。单击Close按钮,关闭Licenses对话框。

图2.42 Licenses对话框

(7)Licenses对话框被关闭后,单击如图2.43所示的New Peoject按钮,先创建一个Java项目。

图2.43 单击New Peoject按钮

(8)如图2.44所示,把这个Java项目的名称(Name)设置为JavaProject,把这个Java项目的存储路径(Location)设置为D:\IDEA\IdeaProjects,单击Create按钮。

图2.44 创建一个Java项目

(9)使用IDEA创建Java项目需要消耗一段时间,待Java项目创建完毕,IDEA的工作区如图2.45所示。

图2.45 IDEA的工作区

说明

通过观察图2.45右下角是否有进度条,即可判断Java项目是否创建完毕。如果图的右下方没有进度条,那么说明Java项目已创建完毕。

(10)如图2.46所示,选择File/Settings,打开Settings对话框。

图2.46 打开Settings对话框

(11)如图2.47所示,先找到并单击Plugins,再在搜索输入框中输入Spring Boot,接着选择Spring Boot Helper,再接着单击Apply按钮,而后单击OK按钮。

图2.47 选择Spring Boot Helper

(12)这时IDEA会弹出如图2.48所示的对话框,其作用是提示用户是否重启IDEA以在插件中应用更改,单击Restart按钮。

图2.48 重启IDEA

(13)待IDEA重启后,会弹出如图2.49所示的Licenses对话框。单击Close按钮,关闭Licenses对话框。

图2.49 关闭Licenses对话框

(14)如图2.50所示,单击Cancel按钮,关闭Confirm Exit对话框。

(15)如图2.51所示,单击Close按钮,关闭Tip of the Day对话框。

图2.50 关闭Confirm Exit对话框

图2.51 关闭Tip of the Day对话框

(16)如图2.52所示,在返回至IDEA的工作区后,选择File/New/Project,打开New Project对话框。

图2.52 打开New Project对话框

(17)如图2.53所示,经过上述操作后,即可在New Peoject对话框中的Generators版块下找到Spring Initializr选项。

图2.53 在New Peoject对话框中的Generators版块下找到Spring Initializr选项

2.3.2 使用IDEA创建Spring Boot项目

在成功地向IDEA添加Spring Initializr选项以后,即可使用IDEA创建Spring Boot项目。使用IDEA创建Spring Boot项目的步骤如下。

(1)如图2.54所示,在单击Spring Initializr选项以后,将显示用于创建Spring Boot项目的相关信息的界面。

图2.54 单击Spring Initializr选项

(2)根据如图2.55所示的内容,修改用于创建Spring Boot项目的相关信息,单击Next按钮。

注意

在填写“项目的唯一ID”(即Artifact)时,务必注意以下两点:

(1)英文字母须小写。

(2)不得包含特殊字符。

否则,IDEA会弹出错误提示框。

(3)如图2.56所示,单击并打开Web下拉列表后,选择Spring Web选项,单击Next按钮。

图2.55 修改用于创建Spring Boot项目的相关信息

图2.56 选择Web下拉列表中的Spring Web选项

(4)如图2.57所示,在确认项目的名称和项目的存储路径后,单击Create按钮。

图2.57 确认项目的名称和项目的存储路径

(5)如图2.58所示,单击New Window按钮,让名为sprbtdemo的Spring Boot项目在一个新的窗口中显示。

图2.58 让名为sprbtdemo的Spring Boot项目在一个新的窗口中显示

(6)在名为sprbtdemo的Spring Boot项目马上要创建完毕时,IDEA可能会出现闪退的情况。一旦IDEA出现闪退的情况,读者朋友只需重启IDEA即可。

(7)如图2.59所示,在重启IDEA后,把鼠标移至任务栏中的IDEA图标,会发现IDEA打开了两个窗口,左边的窗口用于显示Java项目,右边的窗口用于显示Spring Boot项目。

(8)如图2.60所示,在打开用于显示Spring Boot项目的窗口后,会发现名为sprbtdemo的Spring Boot项目已经创建完毕。

图2.59 IDEA打开的两个窗口

图2.60 Spring Boot项目创建完毕并显示在窗口里

2.3.3 使用IDEA编写第一个Spring Boot程序

如图2.61所示,在IDEA中,先打开sprbtdemo文件夹,再依次打开src文件夹及其子文件夹,即可看到Spring Boot项目sprbtdemo的项目结构。

对比图2.61和图2.11,能够发现IDEA中Spring Boot项目的项目结构和Eclipse中Spring Boot项目的项目结构有些许不同。最为重要的不同在于IDEA的项目底层包是com.mr.sprbtdemo,Eclipse的项目底层包是com.mr。明确这个不同点后,下面将在IDEA中实现2.1.3节(即“编写简单的跳转功能”)的内容,步骤如下。

图2.61 Spring Boot项目sprbtdemo的项目结构

(1)如图2.62所示,在com.mr.sprbtdemo上单击鼠标右键,选择New/Package。

图2.62 新建Package

(2)在弹出New Package对话框后,会发现IDEA已自动填写了“com.mr.sprbtdemo.”。根据2.1.3节的要求,需要在com.mr.sprbtdemo包下创建子包controller。如图2.63所示,因为IDEA已自动填写了“com.mr.sprbtdemo.”,所以读者只需要手动输入“controller”并按下回车键。

图2.63 命名Package

(3)如图2.64所示,在已新建的包controller上单击鼠标右键,选择New/Java Class。

图2.64 新建Java Class

(4)如图2.65所示,在弹出New Java Class对话框后,输入新建Java类的类名(即“HelloController”)并按下回车键。

图2.65 命名Java Class

(5)如图2.66所示,在包controller下创建Java类HelloController后,就可以在IDEA的工作区中编写2.1.3节中用于实现跳转功能的代码了。

(6)如图2.67所示,在编码完毕后,会发现@RestController和@RequestMapping呈现红色,这是IDEA的错误提示。

图2.66 编写实现跳转功能的代码

图2.67 IDEA出现错误提示

(7)如图2.68所示,把鼠标光标移至@RestController处,IDEA会弹出提示框。在提示框中找到并单击Import class后,IDEA就会自动向当前.java文件导入与@RestController相对应的包,即添加“import org.springframework.web.bind.annotation.RestController;”。这时,@RestController将呈现黄色,说明已经消除了@RestController的错误提示。再次通过上述的操作步骤,即可消除@RequestMapping的错误提示。

图2.68 消除错误提示

(8)在消除@RestController和@RequestMapping的错误提示后,IDEA的工作区如图2.69所示。

图2.69 消除错误提示后的IDEA工作区

2.3.4 使用IDEA运行Spring Boot项目

编写完实现跳转功能的代码后,即可使用IDEA运行这个Spring Boot项目。使用IDEA运行这个Spring Boot项目的步骤如下。

(1)如图2.70所示,双击SprbtdemoApplication(即Spring Boot项目sprbtdemo的启动类)。

图2.70 双击SprbtdemoApplication

(2)如图2.71所示,在IDEA显示SprbtdemoApplication.java文件的空白处,单击鼠标右键,单击Run ‘SprbtdemoAppli….main()’,即可启动Spring Boot项目sprbtdemo。

图2.71 启动Spring Boot项目sprbtdemo

(3)在第一次启动Spring Boot项目sprbtdemo时,可能会弹出如图2.72所示的“Windows安全警报”对话框,确认已经选择“公用网络”后,单击“允许访问”按钮。

图2.72 “Windows安全警报”对话框

(4)如图2.73所示,成功启动Spring Boot项目sprbtdemo后,IDEA会陆续地在控制台上打印日志。需要注意的是,日志的第三行出现错误日志(即ERROR)。错误日志的意思是:安装了不兼容的Apache Tomcat原生库版本[1.2.33],需要安装兼容的Tomcat版本[1.2.34]。

图2.73 出现错误日志(即ERROR)

(5)如图2.74所示,打开浏览器,访问http://archive.apache.org/dist/tomcat/tomcat-connectors/native/地址(即Apache官网)。向下滚动鼠标滚轮,找到并单击“1.2.34/”超链接。

图2.74 找到并单击“1.2.34/”超链接

(6)如图2.75所示,在跳转至1.2.34版本的页面后,找到并单击“binaries/”超链接。

图2.75 找到并单击“binaries/”超链接

(7)如图2.76所示,在跳转至binaries目录的页面后,找到并单击tomcat-native-1.2.34-openssl-1.1.1o-ocsp-win32-bin.zip超链接。

图2.76 找到并单击tomcat-native-1.2.34-openssl-1.1.1o-ocsp-win32-bin.zip超链接

(8)如图2.77所示,在弹出“新建下载任务”对话框后,先单击“浏览”按钮,选择Apache Tomcat版本[1.2.34]的存储位置,再单击“下载”按钮。

图2.77 下载Apache Tomcat版本[1.2.34]

(9)如图2.78所示,在下载之后,不解压,双击打开tomcat-native-1.2.34-openssl-1.1.1o-ocsp-win32-bin.zip,双击打开bin文件夹。

图2.78 直接打开tomcat-native-1.2.34-openssl-1.1.1o-ocsp-win32-bin.zip

(10)如图2.79所示,打开bin文件夹后,需要明确的是,x64文件夹里的文件适用于64位的Windows系统,openssl.exe、tcnative-1.dll和tcnative-1-src.pdb这3个文件适用于32位的Windows系统。

图2.79 明确bin文件夹中子文件夹和各个文件的作用

(11)如图2.80所示,因为笔者的操作系统是64位的Windows系统,所以双击打开x64文件夹。

图2.80 打开x64文件夹

(12)如图2.81所示,把x64文件夹中的tcnative-1.dll和tcnative-1-src.pdb这两个文件复制并粘贴到JDK的bin目录下,即D:\Java\jdk-19\jdk-19.0.2\bin下。

图2.81 把x64文件夹中的文件复制并粘贴到JDK的bin目录下

(13)关闭正在运行的Spring Boot项目sprbtdemo,按照图2.71所示的操作步骤,再次启动Spring Boot项目sprbtdemo。如图2.82所示,IDEA会重新陆续地在控制台上打印日志。通过与图2.73进行对比,会发现在图2.73中出现的错误日志(即ERROR)已经消失了。

(14)如图2.83所示,打开浏览器,访问http://127.0.0.1:8080/hello地址,就可以在页面中看到代码返回的字符串。

图2.82 在图2.73中出现的错误日志(即ERROR)已经消失了

图2.83 在浏览器中看到代码返回的字符串

说明

本书第2~10章的实例程序是不需要添加依赖的。读者朋友如果喜欢使用IDEA对第2~10章的实例程序进行编码,可以参考本书附录的A.1节的内容。