1、精简性
Spring简洁性体现在其运行速度和文件大小上,Spring的处理开销和文件大小都是非常轻量的,使用Spring的应用对象不依赖于Spring中的任何特定类,通常,一个很小的JAR文件即可存放Spring的完整框架。Spring的这一特性决定了其在Java领域的广泛应用。
2、高效性
由于Java是完全面向对象的,因此几乎所有Java编写的应用内都含有多个对象,每个对象在工作的时候可能会依赖于其他对象,要么由使用者自己创建所需要的对象,要么由上层来统一分配,前者是非常低效的做法,因此现在普遍采用后者,即控制反转技术(IOC)。Spring通过IOC在一个对象创建的时候将其所依赖的其他对象传递进来。
3、便捷性
Spring [2] 允许使用者以面向切面编程(AOP)的方式,将业务逻辑与底层的系统服务分开,使用者因而可以专注于业务逻辑,而非系统级的开发,有利于用户的敏捷开发。除此之外,Spring还可以被看做是一个容器,用于存放和管理用户提交的应用对象,Spring负责控制这些对象的生命周期,通过简单的配置文件,就可以实现bean的生成与维护、维持对象之间的依赖关系,可以说Spring为用户提供了一个可以很方便的开发、测试、部署的环境。除此之外,Spring是一个分层架构的框架,含有Spring Core、Spring DAO、Spring AOP、Spring Web等七个不同层次的模块,供不同需求的用户使用。