Spring学习笔记

在这里插入图片描述

Spring5框架

内容概要

1. Spring框架概述
2. IOC容器
3. Aop
4. JdbcTemplate
5. 事务管理
6. Spring5新特性

Spring5框架概述

1.Spring是轻量级的开源的JavaEE框架
2.Spring可以解决企业应用开发的复杂性
3.Spring有两个核心部分:IOC和Aop
(1) IOC:控制反转,把创建对象过程交给Spring进行管理
(2) Aop:面向切面,不修改源代码进行功能增强
4.Spring特点
(1) 方便解耦,简化开发
(2) Aop编程支持
(3) 方便程序测试
(4) 方便和其他框架进行整合
(5) 方便进行事务操作
(6) 降低API开发难度

导入Spring5相关jar包
在这里插入图片描述
在这里插入图片描述

IOC(概念和原理)

1.什么是IOC

(1) 控制反转,把创建对象和对象之间的调用过程,交给Spring进行管理
(2) 使用IOC目的:为了降低耦合度
(3) 如下的入门案例就是实现IOC

①首先创建一个User类
在这里插入图片描述
②创建spring配置文件(xml格式),并配置User对象的创建
在这里插入图片描述
id:配置信息的id
class:对象的全类名
在这里插入图片描述
③进行测试代码的编写
在这里插入图片描述

2.IOC底层原理

xml解析 、工厂模式 、 反射

工厂模式(尽可能的降低耦合度,建工厂托管!)

在这里插入图片描述

底层原理

在这里插入图片描述

IOC(BeanFactory接口)

1.IOC思想基于IOC容器完成,IOC容器底层就是对象工厂
2.Spring提供IOC容器的两种方式(两个接口):
(1)BeanFactory:IOC容器基本实现,是Spring内部使用接口,不提供开发人员进行使用
*加载配置文件时候不会创建对象,在获取对象的时候才去创建(懒汉式)
(2)ApplicationContext:BeanFactory接口的子接口,提供更多更强大的功能,一般由开发人员进行使用
*加载配置文件的时候就会把配置文件对象创建完。开发用,牺牲内存换取时间 (饿汉式)

3.ApplicationContext接口有实现类
FileSystemXmlApplicationContext 、 ClassPathXmlApplicationContext
在这里插入图片描述

IOC操作Bean管理(概念)

1.什么是Bean管理
Bean管理指的是两个操作
(1)Spring创建对象
(2)Spring注入属性
2.Bean管理操作有两种方式
(1)基于xml配置文件方式实现
(2)基于注解方式实现

1.IOC操作Bean管理(基于xml方式)
1.1创建对象

在这里插入图片描述

id : 唯一标识
class : 类全路径

1.2注入属性

DI : 依赖注入,就是注入属性

1.2.1使用set方法注入

1.创建Book类
在这里插入图片描述
2.在Spring配置文件中配置对象的创建,配置属性注入
在这里插入图片描述
name : 类里面属性的名称
value : 向属性注入的值
3.编写测试类,测试结果
在这里插入图片描述

1.2.2使用有参构造器进行属性注入

1.创建Order类
在这里插入图片描述
2.在配置文件中配置对象以及配置属性注入
在这里插入图片描述
3.编写测试类,查看结果
在这里插入图片描述

1.2.3p名称空间注入(了解)

在这里插入图片描述
注入其他类型的属性

1.2.4字面量

1.null值,不注入就设置一个空值
在这里插入图片描述
2.属性值含特殊符号
在这里插入图片描述

1.2.5注入属性——外部属性

1.创建两个类service类和dao类
2.在service调用dao里面的方法
3.在Spring配置文件中进行配置
在这里插入图片描述

1.2.6注入属性——内部属性

在这里插入图片描述

1.2.7注入属性——级联赋值

第一种
在这里插入图片描述
第二种
在这里插入图片描述

在这里插入图片描述

IOC操作Bean管理(xml注入集合属性)

1.注入数组类型属性
2.注入List集合类型属性
3.注入Map集合类型属性
4.注入Set集合类型属性
在这里插入图片描述
把集合注入部分提取出来
1.在Spring配置文件中引入名称空间util
在这里插入图片描述
2.使用util标签进行list集合注入属性的提取
在这里插入图片描述

IOC操作Bean管理(FactoryBean)

1.Spring有两种类型的bean,一种普通bean,另外一种工厂bean (FactoryBean)

普通bean:在配置文件中定义bean类型就是返回的类型
工厂bean:在配置文件中定义bean类型可以和返回类型不一样

第一步,创建类,作为工厂bean,让这个类实现FactoryBean接口
第二步,实现接口里面的方法,在方法中定义返回的bean类型
在这里插入图片描述
在这里插入图片描述

IOC操作Bean管理(bean作用域)

在Spring里面,设置创建bean实例可以是单实例(默认),也可以是多实例
在Spring配置文件bean标签里面有属性scope,用于设置单实例还是多实例

scope属性值
1.singleton 单实例,加载Spring配置文件的时候就会创建单实例对象(饿汉式)
2.prototype 多实例,加载Spring配置文件不会创建对象,用的时候调用getBean()方法才创建多实例对象(懒汉式)
在这里插入图片描述

IOC操作Bean管理(bean生命周期)

生命周期:从创建到销毁的过程

bean生命周期
1.通过构造器创建bean实例(无参数构造器)
2.为bean的属性设置值和对其他bean的引用(调用set方法)
3.调用bean的初始化方法(需要进行配置)
4.获取bean对象
5.调用bean的销毁方法(需要进行配置)
在这里插入图片描述
在这里插入图片描述

bean的后置处理器,bean生命周期有七步
1.通过构造器创建bean实例(无参数构造器)
2.为bean的属性设置值和对其他bean的引用(调用set方法)
3.把bean实例传递bean后置处理器的方法:postProcessBeforeInitialization
4.调用bean的初始化方法(需要进行配置)
5.把bean实例传递bean后置处理器的方法:postProcessAfterInitialization
6.获取bean对象
7.调用bean的销毁方法(需要进行配置)

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

IOC操作Bean管理(xml自动装配)

![在这里插入图片描述](https://img-blog.csdnimg.cn/20201222122716484.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ4MDIxMTM5,size_16,color_FFFFFF,t_70

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值