Java知识总结--Spring篇

本文详细介绍了Spring框架的核心概念,包括IOC(控制反转)和AOP(面向切面编程)。讲解了Spring如何通过IOC实现对象的管理和依赖注入,以及AOP在权限校验、日志记录等场景的应用。此外,还讨论了Spring的事务管理、设计模式、事务隔离级别和传播行为,是理解Spring框架不可多得的参考资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Spring篇


Spring


目录

        Spring

1.1.1-什么是框架

1.1.2-什么是Spring 

1.1.3-Spring-IOC

1.1.4-DI依赖注入

1.1.5-Spring 的 IOC 有三种注入方式

1.1.6-Spring-AOP

1.1.7-AOP术语

1.1.8-AOP的底层

1.1.9-Spring 的两大核心

1.1.10-Spring 的两大核心接口

1.1.11-BeanFactory的功能

1.1.12-BeanFactory的加载方式

1.1.13-ApplicationContext的功能

1.1.14-ApplicationContext的加载方式

1.1.15-Bean的作用域

1.1.16-Spring 基于 xml 注入 bean 4种方式

1.1.17-Spring 的自动装配

1.1.18-@Autowired注解是什么?

1.1.19-@Autowired注解和@Resource的区别

1.1.20-Spring所用到的设计模式

1.1.21-Spring事务传播行为

1.1.22-Spring事务的特征

1.1.23-脏读,幻读,不可重复读的问题

1.1.24-Spring事务的隔离级别

1.1.25-Spring 框架中不同类型的事件

1.1.26-Spring的通知类型

1.1.27-Spring实现事务控制的两种方式


1.1.1-什么是框架

        在我看来的话,框架可能会更加的像一个通用的工具,它可以直接拿来使用简化我们一些结构,步骤,我们可以更具自己项目的拓展添加更多的组成部分,更加快速的提高生产力

       例如我们需要做饭,首先要有材米油盐,框架就像是把材米油盐打包成了一个工具箱,我们每次做饭的时候就不用到超时购买,可以直接打开这个工具箱,获取到需要的材料


1.1.2-什么是Spring 

Spring 是一个轻量级的 IoC 和 AOP 容器框架。是为 Java 应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。常见的配置方式有三种:基于 XML 的配置、基于注解的配置、基于 Java 的配置。

主要模块:

  • Spring Core:核心类库,提供 IOC 服务;

  • Spring Context:提供框架式的 Bean 访问方式,以及企业级功能(JNDI、定时任务等);

  • Spring AOP:提供AOP 服务;

  • Spring DAO:对 JDBC 的抽象,简化了数据访问异常的处理;

  • Spring ORM:对现有的 ORM 框架的支持;

  • Spring Web:提供了基本的面向 Web 的综合特性,例如多方文件上传;

  • Spring MVC:提供面向 Web 应用的 Model-View-Controller 实现。


1.1.3-Spring-IOC

Ioc就是指的控制反转,将创建对象的控制权转移,我们之前创建一个对象的时候都是由自己去new一个对象的,完全是自己去把控,有了Spring之后,就可以交给Spring进行控制管理,同时解除了接口和实现的耦合性。

核心原理:配置文件+反射(工厂也可以)+容器

DI 依赖注入,和控制反转是同一个概念的不同角度的描述,即 应用程序在运行时依赖 IoC 容器来动态注入对象需要的外部资源。


1.1.4-DI依赖注入

和控制反转是同一个概念的不同角度的描述,即应用程序在运行时依赖 IoC 容器来动态注入对象需要的外部资源。


1.1.5-Spring 的 IOC 有三种注入方式

  1. 构造器注入
  2. setter 方法注入
  3. 注解注入

1.1.6-Spring-AOP

AOP是面向切面,作为面向对象的一种补充。主要适用于和一些业务无关但是对多个对象产生影响的公共行为和逻辑,封装成一个可以重复利用的模块,这个模块被称为切面。一般用于权限处理,权限判断,日志,事务等非主要业务逻辑的事情。

 


1.1.7-AOP术语

  1. 连接点( Joinpoint ):可以被增强的方法都可以成为连接点

  2. 切点( Pointcut ):真正被拦截到的点

  3. 增强( Advice ):拦截后要做的事情,对方法增加权限的校验等

  4. 目标对象(Target):要被增强的对象

  5. 引介(Introduction)

  6. 织入(Weaving):指advice应用到target的过程

  7. 代理(Proxy)

  8. 切面(Aspect)

博主之前写过的文章,有对AOP术语详细的介绍:AOP


1.1.8-AOP的底层

底层是采用JDK动态代理和CGLIB动态代理实现的

 

博主之前写过的文章,有对AOP术语详细的介绍:AOP


1.1.9-Spring 的两大核心

  • IOC
  • AOP

1.1.10-Spring 的两大核心接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值