Spring原理简介收藏

在用ssh(Struts+Spring+Hibernate)实现的mvc模式中Spring是作为连接Struts和Hibernate的控制层。
与Spring框架相关的概念有以下:
轻量级:轻量级是针对重量级容器(EJB)来说的,Spring的核心包不到1M大小,而使用Spring的核心包所需的资源也很小,所以可以在小型设备中使用。
非侵入性:所有的框架都是提供大量的功能公用户去使用,从而简化开发时间和成本,但由于大量的使用了框架的API,使应用程序和框架发生了大量的依赖性,无法从框架中独立出来,更加无法使程序组件在其他程序中使用,这样的框架叫做入侵式的框架,而Spring目标是一个非入侵式的服务框架。
容器:容器就是一个帮助你把原来自行编写程序去管理对象关系的工作转移给容器来做。Spring提供了容器功能,容器可以管理对象的生命周期、对象与对象之间的关系、你可以通过编写XML来设置对象关系和初始值,这样容器在启动之后,所有的对象都直接可以使用,不用编写任何编码来产生对象。
IOC/DI:Spring最核心的概念就是IOC(反转控制),而他的另一个名字就是DI(依赖注入);使用Spring,你不必在程序中维护对象的依赖关系,只要在xml中设定即可,Spring容器会自己根据相关的配置去产生他们之间的关系,所有的关系都是都是在容器运行的时候注入的,而他们本身是没有关系的。打个比方:比如张三和李四,之前是没有任何关系的两个对象,但当他俩进入班级这个容器中后,班级这个容器就将他俩赋予了同学的关系。这样的做法就是用容器去赋予对象之间的关系,而不是对象本身之间来创建关系。这样做的好处显然实现了松偶合。
AOP(Aspect Oriented Programming面向切面/方面编程):Spring最被人重视的另一个方面就是对AOP的支持,AOP是Spring支持的一个子容器。在一个服务流程中插入与业务逻辑无关的系统服务逻辑(如:Logging登录、Security安全等),而把这些独立出来设计成一个对象,这样的对象称为Aspect。打个比方:做一次环球旅行,在旅行途中要经过若干国家的海关关口办理出入境手续,这样的一个一个的关口就是整个旅行流程中的一个一个的Aspect。 

你可能感兴趣的:(职场,休闲)