1、简介
- 简化Spring应用的初始搭建以及开发过程。
- 嵌入式的Tomcat,无需部署war文件。
- 对于J2EE的开发提供了一站式的解决方案。
- SpringBoot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式。
2、使用Maven创建SpringBoot应用
环境准备
- Jdk 1.8
- IntelliJ IDEA 2018.1
- Maven 3.3.9
说明:SpringBoot 2.x版本所要求的Jdk最低版本为1.8。
步骤演示
1.创建工程
2.选择Maven,并注意Jdk的版本,然后点击Next
3.填写GroupId和ArtifactId,然后点击Next
4.点击Finish完成创建
5.修改pom文件,指定Jdk的版本
<properties> <java.version>1.8</java.version> </properties>
6.添加SpringBoot依赖的父项目坐标以及启动坐标
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.8.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
7.编写Controller类
@RestController public class HelloController { @RequestMapping("/hello") public Map<String, Object> hello() { Map<String, Object> map = new HashMap<String, Object>(); map.put("msg", "HelloWorld"); return map; } }
8.编写启动类
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); } }
启动类存放的位置。启动类可以和controller 位于同一个包下,或者位于controller 的上一级
包中,但是不能放到controller 的平级以及子包下。
9.工程最后结构
10.主程序类上右键,点击Run,启动程序
11.启动成功,控制台打印如下
12.浏览器访问测试
打开浏览器,地址栏输入http://localhost:8080/hello,会看到返回的信息如下
{"msg":"HelloWorld"}
到此为止,HelloWorld入门程序完成。
3、简化部署
将SpringBoot应用程序打成一个可执行的jar包
1.在pom中添加坐标依赖
<!--将spring-boot应用打成一个可执行的jar-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2.添加完后,使用IDEA自带的Maven插件进行打包。
3.打包完成后,在这个工程的target目录下,就会生成该工程的可执行jar包文件。
4.运行这个jar包
按住Shift键,并在空白地方点击鼠标右键,选择“在此处打开命令窗口”,可以在这个目录下打开命令窗口。
使用命令java -jar HelloWorld-1.0-SNAPSHOT.jar来运行程序。
启动成功如下:
5、Idea中快速创建SpringBoot应用
IDEA支持使用Spring的项目创建向导快速创建一个SpringBoot项目。选择我们需要的模块,向导会联网创建SpringBoot项目。
创建过程
1.创建工程,然后点击Next
2.填写Group和Artifact,然后点击Next
3.选择SpringBoot版本以及Web模块的坐标依赖,然后点击Next
4.点击Finish完成创建
5.创建完成后的工程结构
可以看到IDEA自动帮我们生成了启动类,以及一个resources目录。其中,static用来存放项目的一些静态文件,比如js、css等。templates用来存放项目的html文件,application.properties文件用来对项目进行一些配置。这样,我们就可以将重点放到业务代码的编写中去了。