Spring工作原理

开发 后端
本文介绍Spring工作原理,以及IoC(Inversion of control): 控制反转和AOP(Aspect-Oriented Programming): 面向方面编程。

一.IoC(Inversion of control): 控制反转

IoC:
概念:控制权由对象本身转向容器;由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
核心:bean工厂;在Spring中,bean工厂创建的各个实例称作bean


二.AOP(Aspect-Oriented Programming): 面向方面编程
1.代理的两种方式:
静态代理:
◆针对每个具体类分别编写代理类;
◆针对一个接口编写一个代理类;
动态代理:
针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类
2.AOP的主要原理:动态代理

Spring工作原理

Spring 已经用过一段时间了,感觉Spring是个很不错的框架。内部最核心的就是IOC了,动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射,反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml  Spring的配置
文件来动态的创建对象,和调用对象里的方法的 。

Spring工作原理还有一个核心就是AOP这个就是面向切面编程,可以为某一类对象 进行监督和控制(也就是在调用这类对象的具体方法的前后去调用你指定的 模块)从而达到对一个模块扩充的功能。这些都是通过配置类达到的。


Spring目的:就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明
管理的(Spring根据这些配置 内部通过反射去动态的组装对象)要记住:Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。Spring里用的最经典的一个设计模式就是:模板方法模式。(这里我都不介绍了,是一个很常用的设计模式)

Spring工作原理里的配置是很多的,很难都记住,但是Spring里的精华也无非就是以上的两点,把以上两点跟理解了
也就基本上掌握了Spring.

【编辑推荐】

  1. Spring IDE的2.0版的未来计划
  2. Eclipse下spring配置的应用
  3. 在Spring中装配bean的基本xml配置
  4. 用Spring framework实现定时器功能
  5. 简单介绍Spring Timer
责任编辑:佚名 来源: 开源中国社区
相关推荐

2009-06-15 15:57:21

Spring工作原理

2009-06-03 09:16:03

Hibernate工作原理使用

2009-08-14 13:19:23

2024-10-15 10:59:18

Spring MVCJava开发

2022-05-11 07:38:45

SpringWebFlux

2024-07-11 08:17:00

2020-06-15 07:00:00

GitOpsKubernetesDevOps

2009-07-16 10:23:30

iBATIS工作原理

2010-09-25 13:11:48

DHCP工作原理

2021-02-05 15:01:41

GitLinux命令

2019-05-17 11:53:58

MySQLorder by数据库

2009-07-06 12:32:26

JSP引擎

2013-09-18 14:01:46

JavaScript

2011-03-25 09:34:34

Nagios网络监控

2010-09-29 09:28:04

DHCP工作原理

2010-08-02 16:14:54

2019-08-20 14:01:22

HTTPSSSL协议

2013-06-04 13:53:30

OSPF路由协议OSPF协议OSPF

2020-09-16 10:31:58

SMTP网络电子邮件

2013-08-26 10:48:02

Reddit排名算法算法
点赞
收藏

51CTO技术栈公众号