1 springboot概览

image.png

1.1 SpringBoot诞生的背景

  1. 在SpringBoot出现以前,使用spring框架配置web应需要大量的xml配置。

  2. 随着web项目集成软件的不断增多,xml配置文件也在不断地增多,项目的依赖管理也越发的复杂。

  3. xml配置文件不但复杂,而且绝大部分属于模板配置,很多的配置是不断重复的。对新手非常的不友好。

1.2 SpringBoot的主要特性

  1. 遵循约定大于配置的原则,简化配置

  2. 脱离XML配置文件,使用注解实现配置

  3. 内嵌Servlet容器,项目打包成jar包,运行更加方便

  4. 提供启动器,使得配置场景化,方便包管理,简化配置

  5. 快速与第三方类库整合,方便易用

1.3 SpringBoot与Spring,SpringMVC对比

  1. SpringBoot项目并不是替换Spring、SpringMVC,而是使他们用起来更加简单

  2. Spring框架最核心的特性就是依赖注入DI和控制反转IOC

  3. Spring MVC提供了一种友好的方式来开发Web应用程序,可以轻松开发web

  4. Spring 和 Spring MVC最大的弊病在于重量级的配置,并且这些配置有很高的相似性。

  5. Spring Boot期望通过结合自动配置和启动器来解决模板化问题

  6. Spring Boot提供了丰富的第三方集成,简化开发体验

1.4 什么是SpringBoot Starter?

是一组被依赖的第三方类库的集合:

如:引入spring-boot-starter-web,就会自动引入以下与其对应的依赖包

  1. Spring核心,beans,context上下文,AOP面向切面
    2. SpringMVC
    3. Jackson
    4. Validation参数校验
    5. 内嵌Servlet容器
    6. 日志框架

1.5 Spring Boot Starter Parent


  1. <parent>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-parent</artifactId>
  4. <version>2.1.6.RELEASE</version>
  5. <relativePath/> <!-- lookup parent from repository -->
  6. </parent>

所有的Spring Boot项目默认使用spring-boot-starter-parent作为应用程序的父项目
方便统一管理Java版本与依赖版本

1.6 内嵌Servlet容器

  1. SpringBoot默认打包为jar

  2. 使用java -jar即可运行

  3. 使得部署变得简单,有利于服务的构建,启动和扩容

  4. 支持其他容器作为web容器


2 使用idea快速构建SpringBoot项目

说了那么多,手痒痒的很,马上来一发试试!

2.1 maven构建项目
依次点击目录: File -> new -> project

image.png

2.2 更改包名、项目名、java版本
image.png

2.3 确认版本、安装的web模块

image.png

2.3 项目名称、项目路径,最后点Finish

image.png

2.4 idea通过maven下载依赖包后如下

image.png

3 第一基于BS的项目启动

3.1 创建controller包,编写controller内容

@RestController
public class HelloWorldController {
    @RequestMapping("/hello")
    public String index() {
        return "Hello World";
    }
}

3.2 点开层层包,然后点击如下图的小三角,运行程序

image.png

3.3 打开浏览器访问http://localhost:8080/hello,就可以看到效果了,有木有很简单!

image.png

4 项目源码地址

https://gitee.com/alpaak/hello-springboot.git

使用gitbash命令下载:
git clone https://gitee.com/alpaak/hello-springboot.git