spring框架主要七大模块:1.Spring AOP;2. Spring JDBC;3. Spring Core;4.Spring AOP;5. Spring Context;6. Spring Web;7.Spring Web MVC。

Spring 框架是由于软件开发的复杂性而创建的。Spring 使用的是基本的 JavaBean 来完成以前只可能由 EJB 完成的事情。然而,Spring 的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分 Java 应用都可以从 Spring 中受益。

spring框架有哪些  第1张

Spring 框架主要有哪些模块

1、Spring AOP:面相切面编程。

2. Spring JDBC : Java 数据库连接。

3. Spring Core:提供 bean 工厂 IOC。

4.Spring AOP :提供了面向方面的编程实现。

5. Spring Context:提供了关于 UI 支持,邮件支持等。

6. Spring Web:为创建 Web 应用程序提供支持。

7. Spring MVC 提供了 web mvc , webviews , jsp ,pdf ,export。

主要七大模块介绍

1. Spring Core:

Core 封装包是框架的最基础部分,提供 IOC 和依赖注入特性。这里的基础概念是 BeanFactory,它提供对 Factory 模式的经典实现来消除对程序性单例模式的需要,并真正地允许你从程序逻辑中分离出依赖关系和配置。

2.Spring Context:

构建于 Core 封装包基础上的 Context 封装包,提供了一种框架式的对象访问方法,有些象 JNDI 注册器。Context 封装包的特性得自于 Beans 封装包,并添加了对国际化(I18N)的支持(例如资源绑定),事件传播,资源装载的方式和 Context 的透明创建,比如说通过 Servlet 容器。

3.Spring DAO:

DAO (Data Access Object)提供了 JDBC 的抽象层,它可消除冗长的 JDBC 编码和解析数据库厂商特有的错误代码。 并且,JDBC 封装包还提供了一种比编程性更好的声明性事务管理方法,不仅仅是实现了特定接口,而且对所有的 POJOs(plain old Java objects)都适用。

4.Spring ORM:

ORM 封装包提供了常用的“对象/关系”映射 APIs 的集成层。 其中包括 JPA、JDO、Hibernate 和 iBatis 。利用 ORM 封装包,可以混合使用所有 Spring 提供的特性进行“对象/关系”映射,如前边提到的简单声明性事务管理。

5.Spring AOP:

Spring 的 AOP 封装包提供了符合 AOP Alliance 规范的面向方面的编程实现,让你可以定义,例如方法拦截器(method-interceptors)和切点(pointcuts),从逻辑上讲,从而减弱代码的功能耦合,清晰的被分离开。而且,利用 source-level 的元数据功能,还可以将各种行为信息合并到你的代码中。

6.Spring Web:

Spring 中的 Web 包提供了基础的针对 Web 开发的集成特性,例如多方文件上传,利用 Servlet listeners 进行 IOC 容器初始化和针对 Web 的 ApplicationContext。当与 WebWork 或 Struts 一起使用 Spring 时,这个包使 Spring 可与其他框架结合。

7.Spring Web MVC:

Spring 中的 MVC 封装包提供了 Web 应用的 Model-View-Controller(MVC)实现。Spring 的 MVC 框架并不是仅仅提供一种传统的实现,它提供了一种清晰的分离模型,在领域模型代码和 Web Form 之间。并且,还可以借助 Spring 框架的其他特性。

spring 很抽象,spring 是框架,框架的主要目的是什么呢?大概所有框架的目的都一样吧,那就是简化开发。而它存在的目的也是为了简化 java 开发。

怎样简化开发

1、基于 POJO 的轻量级和最小侵入性编程;

2、通过依赖注入和面向接口实现松耦合;

3、基于切面和惯例进行声明式编程;

4、通过切面和模板减少样板式代码。

spring 框架的优点

1、方便解耦:spring 框架可以用来控制依赖关系和创建对象,大大降低了代码之间的耦合性和侵入性。

2、支持 APO:通过 spring 提供的 apo 支持,可以将通用任务集中式处理,方便进行面向切面的编程,提升程序的复用性。

3、支持声明式事物管理:方便对程序进行声明式事物管理,无需动手编程,提高开发效率和质量。

4、方便程序的测试:能用非容器依赖的编程方式进行几乎所有的测试工作

5、方便集成各种优秀框架:spring 不排斥优秀框架,其内部提供了对各种优秀框架的直接支持。

6、降低 Java EE API 的使用难度:spring 对难用的 JavaEE API 进行了封装,使得这些 API 的使用难度大为降低。

7、非侵入式框架:Spring 是一种非侵入式(non-invasive)框架,能减少应用程序对框架的依赖。