万物皆可Hello World
程序员眼中一切都是Hello World。 Spring Boot 也不例外。让我们一起完成您的第一个Spring Boot 程序。
创建一个网络项目
新项目:
当您第一次运行Intellij IDEA 时,或者如果清除“启动时重新启动项目”复选框,您将看到如图3-1 所示的界面并选择“新建项目”选项。
除了第一次运行Intellij IDEA 之外,您还可以通过选择“文件”>“新建”>“项目”菜单命令来创建项目。
选择项目类型:
弹出如图所示的项目类型选择界面。首先,在左侧的项目类型列表中选择Spring Initializr选项,然后在项目SDK下拉列表中选择1.8 javaversion“1.8.0_271”选项。单击“下一步”按钮。
请输入项目信息
显示项目信息输入界面,如图3-3所示。 Group对应pom文件中的groupId,Artifact对应pom文件中的artifactId。首先设置项目类型为Maven,语言为Java,打包方式为Jar,然后在Java版本下拉列表中选择8选项,点击下一步按钮。
选择依赖项
接下来,选择您的项目所依赖的Jar包。如果您创建了Spring Boot 以外的Java Web 项目,请考虑一下您需要依赖哪些Jar 包来创建您的Java Web 项目。你可能根本不记得(或者根本不记得),但这不是你的错。 Jar包太多,而且太琐碎。幸运的是,今天我们使用Spring Boot来开发Web项目。这样你就不用记住你依赖了哪些Jar包。您需要知道的是您想要开发一个网络项目。在Intellij IDEA的依赖选择界面(见图3-4)中,只需选中Spring Web复选框并单击下一步按钮即可。
请为您的项目选择保存路径
最后,您需要为您的项目选择保存路径。根据您的习惯和喜好进行设置,然后单击“完成”按钮。
项目创建后,您将看到如图3-6 所示的项目结构。该结构的细节将在下一节中详细解释。
完整核心代码
完成上述步骤后,您已经构建了Web 项目的基本框架,并且即将完成您的第一个Spring Boot 程序。接下来,创建一个HelloController类,并在本例中只编写hello方法代码。
创建HelloController类
在Intellij IDEA 中创建新类非常容易。单击工具栏上的“Java Class”按钮,如图3-7所示(如果Intellij IDEA没有该按钮,请参见2.3.1节)。创建HelloController 类,方法是选择“文件”>“新建”>“Java 类”菜单命令,或直接右键单击相应的包(例如com.shuijing.boot)。
在“新建Java 类”对话框中键入HelloController,然后按Enter 键,如图所示。
创建hello方法代码
将hello 方法添加到HelloController 类中。具体代码如下。
两个注解@RestController和@GetMapping的用法将在下一章介绍。
运行一下看看效果
完成上述步骤后,您将拥有第一个Spring Boot 程序。接下来,您需要检查程序是否可以成功运行。使用Intellij IDEA 启动项目非常简单。单击图3-9中的向右小箭头或使用Shift+F10快捷键。
当项目启动成功后,您将在Intellij IDEA控制台中看到以下日志:
然后将浏览器指向http://localhost:8080/hello,页面上将打印以下内容:
的执行结果如图所示。
通过上面的简单操作,你已经完成了一个基于Spring Boot的Hello World程序。如果您以前使用过SSH 或SSM(如果没有,我们建议您在网上查找教程并进行实验),您将对Spring Boot 的简单性和高效性有更好的理解。
不知道你是否注意到,使用Spring Boot创建一个Web项目只需5步即可完成。您尚未配置(或引用)web.xml。 您尚未为包裹设置扫描路径。我还没有配置Tomcat。
您似乎尚未完成过去创建Java Web 项目时所需的所有设置。是不是技术已经进步很多了,已经不再需要这些配置了呢?当然,当你放松的时候,应该已经有人帮你完成这些设置了。没错,所有非业务相关的复杂配置都是由Spring Boot默默完成的。那么Spring Boot是怎么做到的呢?其实核心思想就6个字:——:规则优于配置
Spring Boot的工程结构
接下来我们来了解一下Spring Boot项目结构。该图显示了您刚刚创建的项目结构。
如果您之前与Maven有过交互,您应该熟悉这个结构。这是一个标准的Maven 项目结构。
Spring Boot 使用Maven 的项目结构,因为它们都遵循“约定优于配置”的设计理念。
详细结构解释
我们来看看各个文件/文件夹(目录)的作用。
从上面的结构可以看出,项目根目录由四部分组成:—— target(目录)、gitignore(文件)、pom.xml(文件)、src(目录)。
使用Maven打包时,编译好的.class文件、依赖的Jar包以及一些资源文件都放在这个目录下。
gitignore 文件用于配置不需要Git 进行版本控制的文件和目录,例如Intellij IDEA 生成的配置文件或用于本地开发的applicationlocal.yml 文件。
pom.xml文件配置依赖的Jar包,帮助您管理Jar包。我们经常回复。
最后的src 目录用于存储您创建的任何Java 源代码文件、程序配置文件、资源文件等。这是开发所需的主目录。
至此,你对Maven或者Spring Boot的项目结构已经有了非常清晰的了解。但对于我们这些想学习的人来说(别笑),仅仅去这里是不够的。我们还想了解为什么工程结构是这样设计的。您不仅需要知道发生了什么,还需要知道为什么会发生。
结构分类
功能目录
target、gitignore、pom.xml都是工具属性,主要用于Maven和Git,与开发者关系不太密切。您可以将其称为函数目录(文件)。
企业名录
与开发者真正相关的是src目录中的内容。此目录中的内容也是开发人员通常最常交互的内容。可以清楚地看到src目录下有两个分支:——main和test。这两个目录的用途很容易理解。 main用于存放主要业务逻辑代码,test用于存放测试代码。而且不难看出两者的内部结构非常相似。 test提供了main,所以理论上我们知道main中的每个Java类(POJO类除外)都有一个test类,并且main中的每个类都用来保护它。
再往下看,分为dao、service、controller等目录,体现了软件开发中最基本的分层概念,对应我会的数据层、业务逻辑层、Web控制层。
内容选自:010至30000。如有侵权,请联系我们删除。
版权声明:本文转载于网络,版权归作者所有。如有侵权,请联系本站编辑删除。