一、Spring框架简介
Spring为JavaEE开发提供了一个轻量级的解决方案,主要表现为:
.IOC(或者叫做DI)的核心机制,提供了bean工厂(Spring容器),降低了业务对象替换的复杂性,提高了组件之间的解耦。
.AOP的将一些通用任务,如安全、事务、日志等集中进行管理,提高了复用性和管理的便捷性
.ORM和DAO提供了与第三方持久层框架的良好整合,简化了底层数据访问。
.提供了优秀的WebMVC框架。
可以说Spring是贯穿表现层、业务层、持久层,为javaEE提供一站式解决方案的框架。此外,使用Spring还有如下好处:
.低侵入设计,代码污染极低。
.基于Spring框架的应用,可以独立于各种应用服务器,实现writeonce,runanywhere,
.Spring可以与第三方框架良好整合(如ORM,DAO等模块与其他框架整合),但同时Spring提供了高度开放性,应用不会被强制依赖Spring,开发者可以自由选择Spring的部分或者全部。
Spring并不局限于中间层,而是为系统各层都提供了企业级解决方案(例如IOC可以
使用Spring框架可以带来诸多好处,例如进行数据库事务处理,远程调用,JMS消息处理,JMX操作处理,而这些处理都不需要开发人员直接使用相关API(JDBC,JMX,JMS等)
相关阅读:企业级JAVA高级开发技术实战培训班
二、Sping架构
Spring框架是分模块存在,除了最核心的SpringCoreContainer(即Spring容器)是必要模块之外,其他模块都是可选,视需要而定。
官方文档Spring4.0的架构图中,包含了20多个子模块,大致可以分为四类:(1)核心容器(CoreContainer)(2)数据访问和集成(DataAccess/Integration)(3)Web(4)AOP。
本质上Spring可以总结为以下七个模块。
相关阅读:中培走进企业之——驱动的Java高级编程实战培训课程
三、Spring的优点
(1)方便解耦,简化开发
Spring就是一个大工厂,可以将所有对象的创建和依赖关系的维护工作都交给Spring容器管理,大大地降低了组件之间的耦合性。
(2)AOP编程的支持
Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能。
(3)方便集成各种优秀框架
Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如Struts2、Hibernate、MyBatis等)的直接支持。
(4)方便程序的测试
Spring提供了对Junit4的支持,可以通过注解方便的测试Spring程序。
(5)声明式事务的支持
只需要通过配置就可以完成对事务的管理,而无需手动编程。
(6)降低JavaEEAPI的使用难度
spring对难用的JavaEEAPI进行了封装,使得这些API的使用难度大为降低。
简而言之,我们使用Spring有如下的原因:(1)Spring是开源的轻量级框架;(2)一站式框架,内部支持对多种优秀开源框架的集成。如果想要学习更多关于Spring相关的技术点,欢迎关注【中培IT学院】!