首页 > 编程语言 > 详细

Spring简单介绍与总结

时间:2020-08-24 18:41:07      阅读:68      评论:0      收藏:0      [点我收藏+]

1. Spring简介

spring是一个为了解决企业应用开发的复杂性,而出现的一个轻量级的开源框架。
轻量级,不是说Spring的代码少,而是Spring是非侵入式的,也就是说引入Spring框架并不会对原来的应用产生影响。

优点:

  • 方便解耦,简化开发
    Spring就是一个大工厂,可以将所有对象创建和依赖的关系维护,交给Spring管理。

  • AOP编程的支持
    Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能。

  • 声明式事务的支持
    只需要通过配置就可以完成对事务的管理,而无需手动编程。

  • 方便程序的测试
    Spring对Junit4支持,可以通过注解方便的测试Spring程序。

  • 方便集成各种优秀框架
    Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架的直接支持(如:Struts、Hibernate、MyBatis等)。

  • 降低JavaEE API的使用难度
    Spring对JavaEE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低。

Spring包含两大模块:
IOC:控制反转(依赖注入(DI))
AOP:面向切面编程

2. IOC容器和依赖注入(DI)

IOC容器出现,是为了降低耦合度的。
IOC使用的是工厂模式,通过工厂容器解析配置文件中的bean,并创建实例,等有需要注入时,将bean实例set到类中。

控制反转,是指是将创建对象的控制权从程序员手中转向Spring框架,获得依赖对象的过程被反转了。控制被反转之后,获得依赖对象的过程由自身管理变为了由IOC容器主动注入。
所谓依赖注入,就是由IOC容器在运行期间,动态地将某种依赖关系注入到对象之中。

所以,依赖注入(DI)和控制反转(IOC)是从不同的角度的描述的同一件事情,就是指通过引入IOC容器,利用依赖关系注入的方式,实现对象之间的解耦。

3. 面向切面(AOP)

AOP(Aspect OrientedProgramming)称为面向切面编程,是一种编程思想,是面向对象编程(OOP)的一种补充。
面向对象编程将程序抽象成各个层次的对象,而面向切面编程是将程序抽象成各个切面。在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等。

可以在不修改源代码的前提下,去为系统中的业务组件添加某种通用功能。
Spring的AOP使用的是动态代理模式。

Spring简单介绍与总结

原文:https://www.cnblogs.com/sivanchan/p/13555174.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!