文章目录
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>