一、hello Springboot
①引入依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
②创建主程序
③编写controller类
④启动主程序
⑤浏览器访问
⑥创建springboot的配置文件,将所有的配置都写在这里,简化开发
⑦项目的打包
二、依赖管理特性
自定义版本
①查看spring-boot-dependencies里面规定当前依赖的版本
②在当前项目里重写配置
start场景启动器
三、自动配置特性
1.自动装配开发需要的组件
2.默认的包结构
不需要再设置注解扫描包配置,只需要springboot启动类在同一目录下即可
想要改变包扫描路径有以下两种方法:
①
②@ComponentScan注解
3.@Configuration和@Bean
4.@import
在容器中创组件实例
5.@Conditional(条件装配)
6.@ImportResource
导入一些spring配置文件
7.@ConfigurationProperties
让javabean与properties文件中的数据绑定
①首先编写一个javabean
四、springboot应用如何编写:
①.引入场景依赖
官方场景依赖
②查看自动配置报告
在配置文件中设置debug=true 开启自动配置报告
Negative 不生效
Positive 生效的
五、写程序时用到的工具
1.lombok
①引入依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
②安装插件
③使用注解
2.dev-tools
热更新(某个地方修改后,自动更新)
ctrl+f9
3.spring initializr(项目初始化向导)
快速创建springboot程序
六、配置文件yaml的用法
基本语法:
数据类型:
在ymal中,双引号不会改变 /n 的含义,但是单引号会将/n当作字符串输出
自定义的bean与配置文件绑定的时候编写代码有提示要引入如下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
七、Web开发
简单功能分析
静态资源访问
①只要将静态资源放到以下目录中,就可以以(/项目根路径/静态资源名称)的形式访问静态资源
②改变默认的静态资源路径
spring:
mvc:
static-path-pattern: /res/**
resources:
static-locations: [classpath:/haha/]
请求参数处理
在springboot中想要使用restful风格,需要手动开启
spring:
mvc:
hiddenmethod:
filter:
enabled: true #开启页面表单的Rest功能
同时前端也得做一些额外的操作:
分析原理:
常用参数注解使用
①@PathVariable :获取路径变量(与RestFul分格有关)
②@RequestHeader :获取请求头
③@RequestParam:获取请求参数
④@CookieValue:获取cookie值
⑤@RequestBody:获取请求体
⑥@MatrixVariable:矩阵变量(cookie禁用的场景会用到这个参数)
⑦@RequestAttribute:获取请求域属性
Thymeleaf初体验
视图解析:springboot在处理完某个请求想要跳转到某个页面的过程。
视图解析方式:1.转发 2.重定向 3.自定义视图
步骤
①引入Thymeleaf 的start
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
拦截器
实现一个拦截器的步骤:
①
②
文件上传
文件上传小demo
①创建一个文件上传的表单
②编写控制类
错误处理
springboot针对错误有默认的处理方式:
①正对浏览器客户端返回白页
②针对其他客户端返回json数据
如果要自定义返回错误页面,可以按一下步骤:
八、整合mybatis
配置模式
①
记得配置好数据源
②在mapper文件上加@mapper注解,或者在启动类上加@Mapperscan()注解
③写对应的xml文件
注解模式
只需将sql语句通过注解的方式写到mapper层的方法上面,但是只建议写简单的sql语句,如果遇到复杂的还是建议用映射文件
九、junit5
Spring Boot 2.2.0 版本开始引入 JUnit 5 作为单元测试默认库
断言
断言:断定一定会出现
详细内容