Spring介绍
Spring框架是个轻量级的Java EE框架。所谓轻量级,就是指不依赖于容器就能运行的。像一些Struts、Hibernate也是轻量级的的框架。
轻量级框架是相对于重量级框架而言的,重量级框架必须依赖特定的容器,例如EJB框架就必须运行Glassfish、JBoss等支持EJB的容器中,而不能运行在Tomcat中。
Spring包含六大模块:DAO、ORM、AOP、J2EE、WEB、CORE,其中Spring Core提供IOC
IOC和AOP
Spring以IOC、AOP为主要思想,其中IOC就是指控制反转或反向控制。在Spring框架中我们通过配置创建类对象,由Spring在运行阶段实例化、组装对象。有时候也被称为DI依赖注入,它是一种降低对象耦合关系的一种设计思想.
IOC的优点:
-
通过IOC容器,开发人员不需要关注对象是如何创建的,同时增加新类也非常方便,只需要修改配置文件即可实现对象的热插拔。
-
IOC容器可以通过配置文件来确定需要注入的实例化对象,因此非常便于进行单元测试。
IOC的缺点:
-
对象是通过反射机制实例化出来的,因此对系统的性能有一定的影响。
-
创建对象的流程变得复杂。
AOP
AOP就是面向切面编程,它的思想就是在执行某些代码前执行另外的代码,能够让程序变得更加灵活、扩展性更好,可以随意的添加和删除某些功能。Servlet中的Filter就是一种AOP思想的实现。