尚硅谷-Spring5框架2020最新版教程(idea版)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 Spring框架概述
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 Spring5入门案例
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 2、打开idea工具,创建普通Java工程
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 3、导入Spring5相关jar包
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 IOC
1.IOC(概念和原理)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 IOC容器本质指的就是工厂
反射:通过得到类的字节码文件(.class),可以操作类中的所有内容
IOC达到的目的:
IOC进一步降低耦合,例如dao中的类路径发生了变化,不需要在servic类和工厂类中修改,只需要需改xml文件中的类路径属相
IOC解耦类相互依赖的过程:解析xml配置文件获取类的路径,利用反射从二进制(.class)文件获取类的信息,再通过neInstance和强转创建类对象
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 2.IOC(BeanFactory接口)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 3.IOC操作Bean管理(概念)
IOC操作的的术语是Bean管理
依赖注入是Ioc的具体实现,属相注入的时候不再需要自己去new而是有spring创建好,直接去存放bean的容器中获取(依赖注入)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 原始的java属相注入方式:set方法注入和构造方法注入
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 IOC操作Bean管理(基于xml方式)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 IOC操作Bean管理(FactoryBean)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 4.IOC操作Bean管理(bean作用域)
bean作用域的作用域是指:创建bean实例是单实例还是多实例
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 添加后置处理器后bean的生命周期会在初始化前后多两步
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 IOC 操作 Bean 管理(xml 自动装配)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 IOC 操作 Bean 管理(基于注解方式)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 创建对象注解
Spring 针对 Bean 管理中创建对象提供注解
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 5.基于注解方式实现属性注入
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 @Autowired 根据属性类型进行自动装配
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 @Qualifier:根据名称进行注入
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 @Resource:可以根据类型注入,可以根据名称注入
@Resource是java提供的,所有spring 更推荐使用@Autowired [email protected]
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 @Value:注入普通类型属性
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 6.完全注解开发
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 但是实际开发都是通过Springboot实现完全注解开发
AOP
AOP: 实现了在不改变类中原有代码的基础上,来增强类中的方法逻辑
AOP(概念)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 AOP(底层原理)
AOP 底层使用动态代理实现。
代理: 为需要被增强类对象生产一个代理对象,通过这个代理对象添加需要曾加的功能。
AOP 底层使用动态代理
有两种情况动态代理:
- 第一种 有接口情况,使用 JDK 动态代理
- 第二种 没有接口情况,使用 CGLIB 动态代理
有接口情况,使用 JDK 动态代理
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
没有接口情况,使用 CGLIB 动态代理
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 AOP(JDK 动态代理)
Spring已经帮我实现动态代理的实现,我们只需通过配置或注解及可以直接使用。我们这里主要学习一下JDK 动态代理实现方式
1、使用 JDK 动态代理,使用 Proxy 类里面的方法创建代理对象
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 AOP中操作的术语(专业名词)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 AOP 操作(准备工作)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 AOP 切入点表达式
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 AOP 操作(AspectJ 注解)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 配置不同类型的通知
SpringBoot2.x.x 对应的是Spring5
Spring5 AOP的执行顺序
程序执行正常顺序
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 程序运行抛出异常:
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 相同的切入点抽取
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 有多个增强类多同一个方法进行增强,设置增强类优先级
使用@Order(1)设置增强类执行的先后顺序 @Order(1)中的值越小优先级越高(0-1)
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 JdbcTemplate
1、什么是 JdbcTemplate
(1)Spring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作
Spring5 框架新功能
1、整个 Spring5 框架的代码基于 Java8,运行时兼容 JDK9,许多不建议使用的类和方法在代码库中删除
Spring 5.0 框架自带了通用的日志封装
Spring 5.0 框架自带了通用的日志封装但也可以这个和其他日志框架如Log4j2
Spring 5.0不在支持整合Log4j。
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 第二步 创建 log4j2.xml 配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE >
ALL -->
<!--Configuration 后面的 status 用于设置 log4j2 自身内部的信息输出,可以不设置,
当设置成 trace 时,可以看到 log4j2 内部各种详细输出--> <configuration status="INFO">
<!--先定义所有的 appender-->
<appenders>
<!--输出日志信息到控制台-->
<console name="Console" target="SYSTEM_OUT">
<!--控制日志输出的格式-->
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-
5level %logger{36} - %msg%n"/>
</console>
</appenders>
<!--然后定义 logger,只有定义 logger 并引入的 appender,appender 才会生效-->
<!--root:用于指定项目的根日志,如果没有单独指定 Logger,则会使用 root 作为
默认的日志输出-->
<loggers>
<root level="info">
<appender-ref ref="Console"/>
</root>
</loggers>
</configuration>
Spring5 框架核心容器支持@Nullable 注解
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 Spring5 支持整合 JUnit5
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结 总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结
Sping5 尚硅谷 2020Spring框架概述IOCAOPAOP中操作的术语(专业名词)JdbcTemplateSpring5 框架新功能总结