框架的主要作用是把大量最佳实践的经验固化,从而降低开发人员的使用成本,让开发人员专注于做什么,而不是怎么做。例如,常见的Web分层框架通常将技术或接口的实现细节隐藏,不仅让架构师和开发人员关注项目技术结构设计,还让开发人员更关注某一层业务与功能的实现。
Spring的核心功能是将所有模块和组件整合成一个应用程序。这个过程中,首先读取配置说明(如XML配置、Java的配置等),然后在应用程序上下文中初始化Bean,将Bean注入依赖它们的其他Bean。
Spring的主要优势如下。
● 轻量级。Spring基于POJO(Plain Ordinary Java Object)模型,是轻量级框架。
● 非侵入式方法。Spring并不强制扩展类或接口。
● 低耦合。由于使用依赖注入(Dependency Injection,DI),因此Spring对象是低耦合的。
● 模块化。Spring采用模块化设计,只能使用所需的模块。
● 易于测试。依赖注入和POJO模型使应用程序易于测试。
● 事务管理。Spring为事务管理提供事务管理接口。
● 不需要应用程序服务器。以前的Struts或EJB应用程序需要运行应用程序服务器,但Spring应用程序不需要应用程序服务器。
● 模型-视图-控制器(Model-View-Controller,MVC)框架。无缝集成Spring MVC框架,这让程序员更加关注业务逻辑。