2023SpringBoot教学课件 第2讲 Spring Boot入门_第1页
2023SpringBoot教学课件 第2讲 Spring Boot入门_第2页
2023SpringBoot教学课件 第2讲 Spring Boot入门_第3页
2023SpringBoot教学课件 第2讲 Spring Boot入门_第4页
2023SpringBoot教学课件 第2讲 Spring Boot入门_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章SpringBoot入门第1章SpringBoot入门1.1SpringBoot简介1.2

环境搭建1.3

创建第一个SpringBoot项目1.4

使用SpringInitializer快速创建项目21.1SpringBoot简介SpringBoot是由Pivotal团队提供的全新框架,是伴随着Spring4而诞生的,是一种全新的编程规范,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。它在继承Spring优点的基础上,简化了框架的使用,SpringBoot使得开发者可以更容易地创建基于Spring的可以“即时运行”的应用和服务。该框架采用“约定优于配置”的方式开发,使得开发人员不再需要定义样板化的配置,通过这种方式可以快速构建Spring应用。从本质上来说,SpringBoot其实就是Spring框架的另一种表现形式。3https://spring.io/projects/spring-boot1.1SpringBoot简介SpringBoot具有如下特征:使用SpringBoot可以创建独立的Spring应用程序。在SpringBoot中直接嵌入了Tomcat、Jetty、Undertow等容器。通过提供自己的启动器(Starter)依赖,简化项目构建配置。尽量的自动配置Spring和第三方类库。提供运维特性,如指标信息、健康检查及外部化配置。绝对没有代码生成,也不需要XML配置文件,开箱即用。与云计算的天然继承。SpringBoot主要有三种版本,介绍如下:SNAPSHOT:快照版,即开发版。CURRENT:最新版,但是不一定是稳定版。GA:GeneralAvailability,正式发布的版本。

在开发中,我们应当选择正式发布的GA版本。41.2环境搭建搭建环境,才能真正进行开发和部署,目前常用的Java开发工具有Eclipse、IntelliJIDEA、SpringToolSuite和MyEclipse等。本书采用IntelliJIDEA作为IDE进行开发。1.2.1JDK的下载与安装1.2.2Maven安装与设置1.2.3IntelliJIDEA安装与设置51.2.1JDK的下载与安装根据SpringBoot官方文档,从SpringBoot2.2.10版本要求必须是JDK8以上版本,下载安装相应JDK后,配置环境JAVA_HOME,值为D:\ProgramFiles\Java\jdk1.8.0_281。在系统变量里新建CLASSPATH变量,变量值为“.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar”,然后将“%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin”加入系统的环境变量path中。完成配置后,在命令行窗口输入java-version,会显示JDK的版本信息,再在命令行窗口输入javac,出现用法提示信息,表示JDK已经配置成功,如图1-1所示。61.2.2Maven安装与设置

Maven是Apache下的一个开源软件项目管理工具,同时提供了出色的项目构建能力。基于项目对象模型(ProjectObjectModel,POM)的理念,通过一段核心描述信息来管理项目构建、报告和文档信息。使用Maven可以对项目的依赖包进行管理,它也支持构建脚本的继承。对于一些模块(子项目)较多的项目来说,Maven是更好的选择,子项目可以继承父项目的构建脚本,从而减少构建脚本的冗余。Maven本身的插件机制也使其更加强大和灵活,使用者可以配置各种Maven插件来完成自己的事情。在Maven众多特性中,最为重要的是它对依赖包的管理,Maven将项目所使用的依赖包的信息放到pom.xml的dependencies节点。71.2.2Maven安装与设置

Maven官方网站下载:

/download.cgi,找到apache-maven-3.8.x-bin.zip的压缩包链接。下载后解压得到apache-maven-3.8.x目录,配置环境变量MAVEN_HOME,值为D:\Maven\apache-maven-3.8.x。配置好MAVEN_HOME后,将“%MAVEN_HOME%\bin”加入系统的环境变量path中。完成配置后,在命令行窗口输入mvn-v,稍后可以看到输出的Maven版本信息,如图1-2所示。81.2.2Maven安装与设置配置Maven仓库主要关注两个方面:Maven下载的类库的来源,即远程Maven仓库。下载后的类库需要地方存储,即本地Maven仓库。这里放在D:\Maven\MavenRepository目录下。修改Maven的settings.xml文件(该文件存放在MAVEN_HOME/config目录下),打开settings.xml文件,如图1-3所示。91.2.2Maven安装与设置Apache官方的仓库位于国外,所以下载速度较慢,这里推荐使用国内阿里云的Maven仓库镜像,以提升下载速度和稳定性,并且修改本地Maven仓库的存放地址,修改Maven的settings.xml文件,在<mirrors></mirrors>标签中添加mirror子节点,配置如下:10<mirrors><mirror> <id>aliyunmaven</id> <mirrorOf>public</mirrorOf> <name>阿里云公共仓库</name><url>/repository/public</url></mirror></mirrors>1.2.2Maven安装与设置

配置完成后,在cmd命令行输入“mvnhelp:system”进行测试,看到下载链接是ailiyun的链接,最后出现“BUILDSUCCESS”的提示,表示配置成功,如图1-4所示。11下载完成后,查看本地仓库D:\Maven\MavenRepository,就会出现从远程仓库下载下来的文件。1.2.3IntelliJIDEA安装与设置访问/idea/download/的官网下载地址,如图1-5所示。

121.2.3IntelliJIDEA安装与设置

IDEA主要有旗舰版(可试用)和社区版(免费),读者下载合适的版本,笔者使用的是ideaIU-2021.1.3版本,具体可以根据自己的情况下载,各版本之间的差异不是很大,下载完成后安装即可。安装完成后,打开进入IDEA欢迎界面,如图1-6所示。131.2.3IntelliJIDEA安装与设置在Projects下,选项如下所示:NewProject:创建一个新的项目。Open:打开或导入一个现有的项目。

GetfromVCS:从版本管理工具内获取项目,可以通过服务器上的项目地址或其他Git托管服务器上的项目。

这里我们可以设置IDEA的主题,在IDEA的欢迎界面,单击左侧的“Customize”,在右侧的“Colortheme”的下拉列表中,选择相应的颜色模板,这里选择“IntelliJLight”,如图1-7所示。141.2.3IntelliJIDEA安装与设置避免以后每个项目都要配置Maven,这里我们在IDEA中统一配置Maven。在IDEA欢迎界面的“Customize”选项下,单击右侧下方的“Allsettings”选项,进入Settings设置页面,在界面左侧选择“Build,Execution,Deployment”

“BuildTools”

“Maven”选项,在右侧对应的设置界面中进行Maven初始化设置,具体如图1-8所示。15上图是对Maven安装目录(Mavenhomedirectory)、Maven的settings配置文件(Usersettingsfile)和Maven本地仓库地址(Localrepository)进行了设置。当然,读者可以根据自己的情况配置Maven选项。配置完成后,单击“Apply”

“OK”按钮即可完成Maven的初始化设置。1.3创建第一个SpringBoot项目

SpringBoot项目可以通过官网在线构建,也可通过使用SpringInitializer工具构建,还可通过IDEAMaven项目构建,这里首先讲解通过Maven项目构建。1.3.1创建Maven工程1.3.2导入相关依赖包1.3.3创建启动类和控制器1.3.4启动项目161.3.1创建Maven工程在IDEA欢迎界面,选择“NewProject”进入项目新项目创建界面,左侧罗列的是可以选择创建的项目类型,包括Java项目、Spring项目、Android项目、SpringInitializr项目(即SpringBoot项目)、Maven项目等;右侧是不同类型项目对应的设置界面。这里选择Maven选项,右侧选择当前项目的JDK,如图1-9所示。171.3.1创建Maven工程

进入Maven项目创建界面,Name用于指定项目名称;Location用于指定项目的存储路径;点开ArtifactCoordinates,GroupId表示组织Id,ArtifactId表示项目唯一标识符,一般是项目名称;Version表示项目版本号。设置好之后,单击Finish按钮完成项目的创建,如图1-10所示。181.3.1创建Maven工程

项目创建完成后,会默认打开创建Maven项目生成的pom.xml依赖文件,项目结构如图1-11所示。

使用IDEA开发工具进行Maven项目的初始化搭建已经完成,但目前只是一个空的Maven项目,要构建SpringBoot项目,还需要进行其他设置。191.3.1创建Maven工程修改设置整个平台的JDK版本

201.3.1创建Maven工程

IDEA有两个概念,一个是Project(工程),一个是Module(模块、组件)。可以把Project认为是最高的存储目录,在Project里又可以创建Module。IDEA中的Project相当于Eclipse中的workspace,IDEA中的Module相当于Eclipse中的一个项目。而一个Project就是由多个Moudle组成的整体。在IDEA中,并没有对Project和Module进行强关联和强约束,主要起到一个项目定义、范围约束、规范类型的效果。

211.3.2导入相关依赖包在HelloWorld项目下的pom.xml文件中添加SpringBoot项目和Web开发对应的依赖。spring-boot-starter-parent是一个特殊的starter,提供了一些Maven的默认设置,是SpringBoot框架集成项目的统一父类管理依赖,添加依赖后可以使用SpringBoot的相关特性;<dependencies>标签中添加的spring-boot-starter-web依赖是SpringBoot框架对Web开发集成支持的依赖启动器,代码如下:pom.xml文件修改保存后,Maven将自动在互联网环境下,下载所需的所有jar文件。

22<!--引入SpringBoot依赖,继承SpringBoot的starter--><parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.5.2</version>

</parent>

<dependencies>

<!--引入Web开发依赖启动器,添加webstarter的依赖-->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

<version>2.5.2</version>

</dependency>

</dependencies>1.3.3创建启动类和控制器在项目的src/main/java目录下创建一个名称为com.yzpc的包,在该包下新建类HelloWorldApplication作为启动类,代码如下:

23packagecom.yzpc;importorg.springframework.boot.SpringApplication;

importorg.springframework.boot.autoconfigure.SpringBootApplication;

//声明该类为SpringBoot的一个引导类

@SpringBootApplication

publicclassHelloWorldApplication{

//main是Java程序入口

publicstaticvoidmain(String[]args){

//run方法表示运行SpringBoot的引导类

SpringApplication.run(HelloWorldApplication.class,args);

}

}1.3.3创建启动类和控制器在com.yzpc包中新建一个名称为MyController的请求处理控制类,并编写一个请求处理方法,代码如下:

24packagecom.yzpc;importorg.springframework.web.bind.annotation.GetMapping;

importorg.springframework.web.bind.annotation.RestController;

@RestController

publicclassMyController{

@GetMapping("/hello")

publicStringhello(){

return"SpringBoot,HelloWorld!";

}

}1.3.4启动项目打开“HelloWorldApplication”入口类,单击类名所在行或main方法所在行前面的绿色按钮,在弹出的选项中选择“Run‘HelloWorldApplication…’”,启动SpringBoot应用程序,如图1-13所示。

启动后的控制台启动信息,如图1-14所示。

251.3.4启动项目在浏览器中输入http://localhost:8080/hello进行测试(hello与MyController类中的@GetMapping("/hello")对应),可以看到页面输出的内容是“SpringBoot,HelloWorld!”,如图1-15所示。

261.4使用SpringInitializer快速创建项目除了以上可以使用Maven方式创建SpringBoot项目外,我们更多是通过IDEA的SpringInitializer方式创建SpringBoot项目,创建方式如下:(1)在IDEA欢迎界面,选择“NewProject”进入项目创建界面,在左侧选择“SpringInitializer”类型的项目。(2)填写完数据后,单击Next按钮进入项目场景依赖选择界面,选择相应的SpringBoot的版本。(3)单击Finish完成设置,SpringBoot项目就创建好了。271.4使用SpringInitializer快速创建项目

(4)打开项目启动类Chapter01Application,代码如下:

打开查看项目依赖管理文件pom.xml,代码如下:

在项目的com.yzpc.chapter01的包下创建一个请求控制类MyController,并编写一个请求处理方法,其代码与1.3.3小节中的MyController类的代码一致。

运行项目的主程序启动类Chapter01Application,项目成功后,在浏览器地址栏上访问http://localhost:8080/hello,运行结果前面图1-15所示。28packagecom.ypzc.chapter01;importorg.springframework.boot.SpringApplication;

importorg.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication

publicclassChapter01Application{

publicstaticvoidmain(String[]args){

SpringApplication.run(Chapter01Application.class,args);

}

}<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance"

xsi:schemaLocation="/POM/4.0.0/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.5.2</version>

<relativePath/><!--lookupparentfromrepository-->

</parent>

<groupId>com.ypzc</groupId>

<artifactId>chapter01</artifactId>

<version>0.0.1-SNAPSHOT</version>

<name>chapter01</name><description>DemoprojectforSpringBoot</description>

<propertie

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论