spring5笔记-spring5新功能

整合日志框架

1、整个Spring框架代码基于java8实现,运行时兼容JDK9,删除了很多不建议使用的类和方法
2、spring5.0框架自带了通用的日志封装
(1)spring5已经移除了Log4jConfigListener,官方建议使用log4j2
(2)spring5框架整合log4j2
第一步整合相关的jar包
在这里插入图片描述第二步创建Log4j2.xml配置文件

在这里插入图片描述

支持@Nullable注解和函数式注册对象

1、@Nullable注解可以使用在方法、注解、参数上面,方法返回可以为空,属性值可以为空,参数值可以为空
在这里插入图片描述
在这里插入图片描述在这里插入图片描述4、Spring 核心容器支持函数式风格

在这里插入图片描述

Spring5支持整合Junit5

1、整合Junit4
第一步 引入Spring相关依赖
在这里插入图片描述第二步创建测试类
在这里插入图片描述

Spring5整合Junit5

1、引入依赖

在这里插入图片描述

2、创建测试类,使用注解完成
在这里插入图片描述在这里插入图片描述
3、使用一个符合注解替代上述的两个注解功能
在这里插入图片描述

SPringWebFlux

1、SpringWebflux介绍
(1)、是Spring5添加的心模块,用于web开阿发,功能SpringMVC类似的,Webflux使用当前一种比较流行的响应式编程出现的框架
(2)、使用传统的Web框架,比如SpringMVC ,这些基于Serblet容器,Webflux是一直异步非阻塞的框架,异步非阻塞的框架在Servlet3.1以后才支持的,核心基于Reacter的相关API实现的。
异步非阻塞:
异步和同步:针对调用者,调用者发送请求,等着对方回应后才向下执行,即同步,反之,为异步
非阻塞和阻塞:针对非调用者,被调用者收到请求后,做出请求任务之后才给出反馈就是阻塞,收到请求后,马上给出反馈然后再去做事情就是非阻塞。
都是针对对象不一样
(3)、webflux特点:非阻塞式、提高系统吞吐量和伸缩性,以Reactor为基础实现响应式编程;函数式编程,spring5框架基于java8,通过函数式编程实现路由请求
在这里插入图片描述两个框架度可以使用注解方式,也能运行在tomcat容器中
SpringMVC采用命令式 编程,WebFlux采用响应式编程

响应式编程

在这里插入图片描述

jav8及其版本

提供的观察者模式两个类Observer和Observable
在这里插入图片描述

响应式编程(Reactor实现)

在这里插入图片描述
Fluxh和Mono都是数据流的发布者,使用Flux和Mono都可以发出三种数据信号:元素值,错误信号,完成信号,错误信号和完成信号都代表终止信号,终止信号告诉订阅者数据流结束了,错误信号终止数据流同时吧错误信息传递给订阅者
在这里插入图片描述

SpringWebflux执行流程和核心API

它是基于Reactor,默认使用容器是Netty,Netty是高性能的NIO(异步非阻塞)框架

在这里插入图片描述
SpringWebflux核心控制器DispatchHandler,实现接口WebHandler
在这里插入图片描述SpringWebflux里面的DispatcherHandler负责请求的处理
在这里插入图片描述SpringWebflux实现函数式编程的两个接口:RoutherFunction(路由函数) HandlerFuction(处理函数)

SpringWebflux(基于注解)

1、创建SpringBoot工程,引入依赖
在这里插入图片描述2、配置启动端口号
在这里插入图片描述3、创建相关的包和启动类
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
SpringWebflux(基于函数式编程)
1、需要自己初始化服务器
2、核心接口:
(实现路由功能) RouterFuction:转发对应的handler
(处理请生成相应的函数)HandlerFUction
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值