一、SpringBoot的基础

1.spring的优点

在这里插入图片描述

2.SpringBoot概述

2.1 SpringBoot解决上述Spring的缺点

SpringBoot对上述Spring的缺点进行的改善和优化,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心的投入打逻辑业务的代码编写中,从而大大提高了开发的效率,一定程度上缩短了项目周期。

2.2 SpringBoot的特点

a.为基于Spring的开发提供更快的入门体验
b.开箱即用,没有代码生成,也无需Xml配置。同时也可以修改默认值来满足特定的需求(配置修改默认值)。
c.提供了一些大型项目中常见的非功能特性,如嵌入式服务器m、安全。指标。健康检测、外部配置等。
d.springBoot不是对Sping功能是上的增强,而是提供了一种快速使用Spring的方式

2.3 SpringBoot的核心功能

a.起步依赖
起步依赖本质上是一个Maven项目对象模型,定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。
b.自动配置
Spring Boot的自动配置是一个运行时的过程,考虑了众多因素,才决定Spring配置应该用哪个,不应用哪个。该过程是Spring自动完成的。

4.SpringBoot的环境搭建

4.1代码实现

4.1.1 创建Maven工程

创建基本的Maven工程
Module添加项目到当前项目中

4.1.2 添加SpringBoot的起步依赖

SpringBoot要求,项目要继承SpringBoot的起步依赖Spring-boot-starter-parent(

这是Spring Boot的父级依赖,这样当前的项目就是Spring Boot项目了。 spring-boot-starter-parent
是一个特殊的starter,它用来提供相关的Maven默认依赖。使用它之后,常用的包依赖可以省去version标签。

<--所有的springboot工程都必须继承spring-boot-starter-parent-->
<parent>  
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>2.2.1.RELEASE</version>
</parent>

SpringBoot要集成SpringMVC进行Controller的开发,所以项目要导入web的启动依赖spring-boot-starter-web(

使用 Spring 框架除了开发少数的独立应用,大部分情况下实际上在使用 SpringMVC 开发 web
应用,为了帮我们简化快速搭建并开发一个 Web 项目,SpringBoot 为我们提供了 spring-boot-starter-web
自动配置模块。

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.2.2.RELEASE</version>
 </dependency>

4.1.3 编写SpringBoot引导类

注解:@SpringBootApplication表示声明当前类是SpringBoot的一个引导类
SpringApplication.run(MySpringBootApplication.class);
运行引导类
Tomcat started on port(s): 8080 (http) with context path ‘’(表示SpringBoot启动成功)

4.1.4 编写Controller

要在引导类MySpringBootApplication同级包或者子级包中创建QuickController

> @Controller public class QuickController {
>     @RequestMapping(name = "/quick")
>     @ResponseBody
>     public String quik(){
>         return "hello SpringBoot";
>     } }

@Contoller:注解的方式,可以使接口的定义更加简单。Spring就能找到Controller类,通过 @RequestMapping注解处理对应的请求。

@RequestMapping:标记的方法会被分发处理器扫描识别,将不同的请求分发到对应的接口上。

@ResponseBody:

如果在一个方法上使用了@RequestMapping注解,这时候,方法的返回值通常解析为跳转的路径,
也就是说,要跳转到指定的jsp页面。在这个代码实例中,要跳转到的是 hello SpringBoot.jsp 页面。
因为工程中尚未添加这个jsp文件,所以报出了 404 错误 (The requested resource is not
available)。

如果添加了 @ResponseBody 这个注解, 则表明该方法的返回值直接写入到 HTTP Response Body 中。
这就是说,如果返回的是JSON, 就得必须添加 @ResponseBody 这个注解

一般在异步获取数据时使用,在使用@RequestMapping后,返回值通常解析为跳转路径,加上@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP
response body中。比如异步获取json数据,加上@responsebody后,会直接返回json数据。

工程的热部署(使用该组件不需要反复运行)

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <version>2.0.0.RELEASE</version>
    </dependency>

4.1.5 测试

发布了10 篇原创文章 · 获赞 0 · 访问量 219

猜你喜欢

转载自blog.csdn.net/yunqiu21/article/details/103885149