Spring 的工作原理

2021-04-22  本文已影响0人  LT_9999

Spring工作原理

内部最核心的就是IOC了,
1、动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射(反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml Spring的配置文件来动态的创建对象,和调用对象里的方法的 )。
2、Spring还有一个核心就是AOP这个就是面向切面编程,可以为某一类对象 进行监督和控制(也就是在调用这类对象的具体方法的前后去调用你指定的模块)从而达到对一个模块扩充的功能。这些都是通过配置类达到的。

*** 要记住:Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。 ***
Spring里用的最经典的一个设计模式就是:模板方法模式。(这里我都不介绍了,是一个很常用的设计模式)Spring里的配置是很多的,很难都记住,但是Spring里的精华也无非就是以上的两点,把以上两点跟理解了 也就基本上掌握了Spring.

Spring AOP与IOC

一、 IoC(Inversion of control): 控制反转
1、IoC:
概念:控制权由对象本身转向容器;由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
核心:bean工厂;在Spring中,bean工厂创建的各个实例称作bean
二、AOP(Aspect-Oriented Programming): 面向方面编程
1、 代理的两种方式:
静态代理:
 针对每个具体类分别编写代理类;
 针对一个接口编写一个代理类;
动态代理:
针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类

  1. 内部最核心的就是IOC了,动态注入,让一个对象的创建不用New了,可以自动的生产,这其实就是利用Java里的反射,反射其实就是在运行时动态的去创建,调用对象,Spring 就是在运行时,跟xml Spring的配置文件来动态的创建对象,和调用对象里的方法。
  2. Spring 还有一个核心就是AOP,这个就是面向切面编程,可以为某一类对象进行监督和控制(也就是在调用这类对象的具体方法的前后去调用你指定的模块)从而达到对一个模块扩充的功能,这些都是通过配置类达到的。

Spring 优缺点

它是一个开源的项目,而且目前非常活跃;它基于IoC(Inversion of Control,反向控制)和AOP的构架多层j2ee系统的框架,但它不强迫你必须在每一层 中必须使用Spring,因为它模块化的很好,允许你根据自己的需要选择使用它的某一个模块;它实现了很优雅的MVC,对不同的数据访问技术提供了统一的 接口,采用IoC使得可以很容易的实现bean的装配,提供了简洁的AOP并据此实现Transcation Managment,等等优点

缺点:jsp中要写很多代码、控制器过于灵活,缺少一个公用控制器

上一篇 下一篇

猜你喜欢

热点阅读