提示:此篇仅为个人初期学习笔记,如有错误,请兄弟们指正
你这么好看还。。。
Spring
前言
提示:后期会更新ssm、springboot、微服务分布式、redis等知识 关注我,一起学习,一起进步吧
脑图
一. Spring概念
1. 概述
-
Spring是轻量级的开源的JavaEE框架
-
Spring可以降低企业应用开发的复杂性-----简化开发
-
Spring有俩个核心部分:
-
IOC
控制反转,把对象创建和调用的过程交给spring的IOC容器进行管理
-
Aop
面向切面,在不修改源代码的情况下,对功能进行增强
分块拆解功能
修改源码,伤筋动骨
-
-
Spring的特点
(1)方便解耦,简化开发
(2)Aop编程支持
(3)方便程序测试@Test
(4)方便和其他框架整合
(5)方便进行事务操作—提供api
(6)降低API开发难度-----spring进行了封装 -
框架 = 配置文件 + jar包
2. 入门案例
使用spring
-
下载jar包
- 官网下载
-
创建普通java项目
-
导入依赖
-
创建普通类
-
创建spring的配置文件,并配置对象创建
<bean id ="对象名" class = "全类名"></bean>
- 测试
二. IOC容器
1. IOC(Inversion Of Control)
- 控制反转
- 把创建对象和对象间的调用全部交给spring的ioc容器进行管理(Bean标签)
- 不需要手动创建对象和手动调用方法
- 使用IOC的目的:降低耦合度
- java----》new------改变地址就得重新编译运行,消耗成本高
- 程序----》高内聚,低耦合
2. 底层原理
- xml解析----解析配置文件中配置的对象
- 工厂模式
- (不在本类中直接通过new关键字创建对象,而是通过工厂类中的静态方法创建对象,进行返回,目的是降低耦合度)
- 反射------》创建对象
- 实现解耦合
3.实现
-
IOC思想基于IOC容器完成,IOC容器底层就是对象工厂—管理对象
-
Spring提供IOC容器实现的两种方式
- BeanFactory:
- IOC容器基本实现,是Spring内部使用的接口,不提供给开发人员使用
加载配置文件的时候,不创建对象,获取对象的时候才创建对象
- ApplicationContext:
-
BeanFactory接口的子接口,提供更多更强大的功能,一般提供给开发人员使用
加载配置文件的时候就会创建相应的对象 -
二者创建对象的时期不同,功能种类不同
4.Bean管理
-
概述
-
Bean就是spring封装对象的类型
-
bean管理包括俩个操作—》**创建对象 **和 注入属性
-
-
基于XML文件
-
创建对象
- bean标签,添加属性(id—对象名,class–全类名),默认调用无参构造方法
-
注入属性
DI:依赖注入
(1)set方法
property标签----name 属性名称,value属性值
(2)有参构造
bean标签—constructor-org标签 name value属性
(3)p名称注入
-
//添加名称空间
xmlns:p="http://www.springframework.org/school/p"
使用名称空间:
<bean id="book"