Spring-了解Spring

一.概述

Spring是一个开源框架。Spring为简化企业级开发而生的,使用Spring,JavaBean就可以实现很多以前要靠EJB才能实现的功能。同样的功能,在EJB中要通过繁琐的配置和复杂的代码才能实现,而在Spring中却非常优雅和简洁。

Spring是一个IOC和AOP容器的框架。

Spring的优良特性:

  • 非侵入式:基于Spring开发的应用中的对象可以不依赖于Spring的API。
  • 依赖注入:DI-Dependency Injection,控制反转(IOC)最经典的实现。
  • 面向切面编程:Aspect Oriented Programming-AOP。
  • 容器:Spring是一个容器,因为它包含并且管理应用对象的生命周期。
  • 组件化:Spring实现了使用简单的组件配置组合成一个复杂的应用。在Spring中可以使用XML和Java注解组合这些对象。
  • 一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库(Spring自身提供了表述层的SpringMVC和持久层的Spring JDBC)。

Spring的模块划分图(黑色代表这部分功能由拿些jar包组成;要使用这个部分的完整功能,这些jar包都需要导入。):

  • Test:Spring的单元测试模块。支持JUnit和TestNG对Spring组件进行测试。
  • Core Container:核心容器(IOC)。包含有Core,Beans,Context和Express Language模块。Core和Beans模块是框架的基础部分,提供IOC和依赖注入特性。Core模块主要包含Spring框架基本的核心工具类,Spring的其他组件都要使用这个包里的类。Beans模块是所有应用都要用到的,包含访问配置文件,创建和管理bean以及进行IOC/DI操作的相关类。Context模块构建于Core和Beans模块的基础之上,提供了一种类似于JNDI注册器的框架式的对象访问方法。Context模块继承了Beans的特性,为Spring核心提供了大量的扩展,添加了对国际化,事件传播,资源加载和对Context的透明创建的支持。Expression Language模块提供一个强大的表达式语言用于在运行时查询和操纵对象。该语言支持设置/获取属性的值,容器和索引值,逻辑和算术运算符,命名变量以及从Spring的IOC容器中根据名称检索对象。它也支持list投影,选择和一般list聚合。
  • AOP+Aspects:面向切面编程模块。提供了一个符合AOP联盟标准的面向切面编程的实现和事务管理的功能。
  • Instrumention:设备整合模块(基本不用)
  • Messaging:消息服务(基本不用)
  • Data Access/Integration:数据访问/集成,访问数据库的模块。包分为JDBC,ORM(Object Relation Mapping-对象关系映射),OXM(Object XML Mapping),JMS,Transaction(事务)。JDBC模块提供了一个JDBC抽象层,可以消除冗长的JDBC编码和解析数据库厂商特有的错误代码,这个模块包含了Spring对JDBC数据访问进行封装的所有类。
  • Web:Spring开发web应用的模块。Web上下文模块建立在应用程序的上下模块之上,为基于Web的应用程序提供了上下文。Web模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。包含WebSocket,Servlet(web.servlet.jar:该模块包含了Spring的model-view-controller实现),Web(webmvc,提供了基础的面向Web的集成特性),Portlet(开发Web应用的组件集成)。

二.Spring核心功能

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值