Spring5框架

1 Spring

1.1 简介

  • 杂货铺,很多零散的都放其中
  • 一个bean是一个对象

这里是引用
在这里插入图片描述

1.2 优点

这里是引用

1.3 组成

在这里插入图片描述
在这里插入图片描述

  • 弊端:发展了太久之后,违背了原来的理念,配置十分繁琐,人称“配置地狱”

IOC

2 IOC

2.1 理论推导

在这里插入图片描述

这里是引用
这里是引用

在这里插入图片描述

2.2 IOC本质

这里是引用

2.3 Hello Spring

这里是引用
在这里插入图片描述

这里是引用

  • beans.xml文件:从官网找框架CV
  • 使用spring创建对象,在spring里这些都称bean。

> 这里是引用

在这里插入图片描述

  • 控制反转IOC:编程思想,由主动编程变为被动接收即对象由spring创建、管理、装配
  • 控制:传统是程序员创建对象,而使用spring则是由spring创建对象
  • 反转:程序本身不创建而变成被动的接收对象
  • 依赖注入:用set方法
  • 要实现不同操作,只需在xml配置文件中进行
    (通过newClassPathXmlApplicationContext去浏览底层源码)

2.4 IOC创建对象的方式

  • 含构造器注入

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 总结:在配置文件加载的时候,容器中管理的对象就已经初始化了
  • 容器:spring容器,即bean内

3 Spring配置

  • 别名:可以通过另一个指定的名字获取数据库对应的数据

这里是引用

3.1 bean配置

  • name:很强大的属性

在这里插入图片描述

3.2 import

这里是引用

  • bean的class可以配置all对象

4 依赖注入(DI)

  • 两种注入

在这里插入图片描述

4.1 构造器注入

在这里插入图片描述

  • 2.2 IOC创建对象方式有

4. 2 set注入

这里是引用

4.2.1 环境搭建

这里是引用
这里是引用
这里是引用
这里是引用

  • 完善注入信息

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

-straight values普通值注入
在这里插入图片描述

4.3 拓展方式注入

  • P注入对应set注入,C注入对应构造器注入

在这里插入图片描述
在这里插入图片描述

4.3.1 P命名空间注入

在这里插入图片描述
-记得在pom.xml内插入 junit

4.3.2 C命名空间注入
  • 配置之前需要有对应的构造器(即有参和无参构造都要创建)

在这里插入图片描述- 测试:@test

在这里插入图片描述

4.4 Bean的作用域

这里是引用-23种设计模式之2
在这里插入图片描述- 单线程一般用单例,多线程一般用原型模式(单例模式可能出现并发问题,原型模式每次都创建新对象太麻烦)
(狂神30mines的单例模式视频待看)

5 自动装配Bean

-Autowired

这里是引用

5.1 测试-手动

  • 1.环境搭建

  • 一个人有2个宠物

  • 手动

在这里插入图片描述

在这里插入图片描述

5.2 byname和bytype自动装配

在这里插入图片描述- byname时:bean里必须要有id=“”

  • bytype:狗的类型唯一,若获取两只狗,那么识别出错

在这里插入图片描述

在这里插入图片描述

5.3 使用注解实现自动装配

5.3.1 @Autowired

在这里插入图片描述
这里是引用
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

5.3.2 @Qualifier

在这里插入图片描述

5.3.3 @Resource

这里是引用

在这里插入图片描述

  • 在idea里建立markdown文件:做笔记/存放常用依赖,便于CV大法

在这里插入图片描述- maven依赖

在这里插入图片描述

6 Spring 注解开发

-在spring之后,要使用注解开发,必须要保证aop的包导入了(右侧maven处查看导入的依赖包)

这里是引用- 使用注解需要导入context约束,增加注解的支持!

6.1 bean(Component:组件,放在类上,说明这个类被Spring管理了,就是bean)

在这里插入图片描述
在这里插入图片描述

6.2 属性如何注入

在这里插入图片描述

6.3 @Component衍生的注解

-其衍生的注解,在web开发中会按照mvc三层架构分层

在这里插入图片描述

6.4 自动装配

在这里插入图片描述

6.5 作用域-@Scope

这里是引用
在这里插入图片描述

6.6 小结

在这里插入图片描述

7 使用JavaConfig实现配置

这里是引用在这里插入图片描述

7.1 实体类

在这里插入图片描述

7.2 测试类

在这里插入图片描述

7.3 配置文件 类

在这里插入图片描述

  • import合并不同配置文件类

在这里插入图片描述
这种纯Java的配置方式,在Spring Boot中随处可见

这里是引用
学习注解视频-常看源码

8 总结

AOP

9 代理模式

这里是引用

9.1 静态代理模式及再理解

9.1.1 静态代理

在这里插入图片描述
这里是引用
这里是引用

  • 3.代理角色

这里是引用
这里是引用

9.1.2 静态代理再理解

这里是引用
这里是引用
这里是引用
这里是引用

9.2 动态代理详解

这里是引用
在这里插入图片描述
这里是引用

待学习:opp原则+反射机制+设计模式+oop+事务管理

10 AOP实现-主要是动态代理

在这里插入图片描述

在这里插入图片描述

10.1 AOP在spring中的作用

这里是引用
这里是引用
这里是引用

10.2 实现方式1-使用Spring实现Aop

这里是引用

  • 使用Spring的API接口实现

这里是引用

10.3 实现2-使用自定义类实现【主要是切面定义】

  • 使用标签

在这里插入图片描述

10.4 注解实现AOP


这里是引用

  • 比较推荐第二种,实现切面复用

11 声明式事务

这里是引用
> 这里是引用
这里是引用

在这里插入图片描述
这里是引用在这里插入图片描述

Spring中的事务管理

这里是引用

17 回顾Mybatis

18 整合Mysteries

18.1整合方式1

18.2整合方式2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

倔强铛铛

谢谢客官的打赏!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值