Spring 基础之一:Spring概述

一、Spring 概述

Spring 框架是一个轻量级的企业级开发的一站式解决方案。所谓解决方案就是可以基于Spring 解决Java EE开发的所有问题。Spring 框架主要提供了IoC 容器、AOP、数据访问、Web 开发、消息、测试等相关技术的支持。

Spring 使用简单的POJO (Plain Old Java Object,即无任何限制的普通Java对象)来进行企业级开发。每一个被Spring 管理的Java 对象都称之为Bean ;而Spring 提供了一个IoC 容器用来初始化对象,解决对象间的依赖管理和对象的使用。

1、Spring 模块

Spring 是模块化的,这意味着你可以只使用你需要的Spring 的模块。如下图所示:

 上图中每一个最小单元,Spring 都至少有一个对呀的jar包。

(1)核心容器(Core Container)

Spring-Core:核心工具类,Spring 其他模块大量使用Spring-Core;

Spring-Beans:Spring 定义Bean 的支持;

Spring-Context:运行时Spring 容器;

Spring-Context-Support:Spring 容器对第三方包的集成支持;

Spring-Expression:使用表达式语言在运行时查询和操作对象。

(2)AOP

Spring-AOP:基于代理的AOP支持;

Spring-Aspects:基于AspectJ的AOP支持。

(3)消息(Messaging)

Spring-Messaging:对消息架构和协议的支持。

(4)Web

Spring-Web:提供基础的Web 集成的功能,在Web 项目中提供Spring 的容器;

Spring-Webmvc:提供基于Servlet的Spring MVC;

Spring-WebSocket:提供WebSocket功能;

Spring-Webmvc-Prolet:提供Prolet环境支持。

(5)数据访问/集成(Data Access/Integration)

Spring-JDBC:提供以JDBC访问数据库的支持;

Sprng-TX:提供编程式和声明式的事务支持;

Spring-ORM:提供对象/关系映射技术的支持;

Spring-OXM:提供对象/xml映射技术的支持;

Spring-JMS:提供对JMS的支持。

2、Spring 的生态

Spring 发展到现在已经不仅仅是Spring 框架本身的内容,Spring 目前提供了大量的基于Spring 的项目,可以用来更深入地降低我们的开发难度,提高开发效率。

目前Spring 的生态里主要有以下项目,我们可以根据自己项目的需要来选择使用相应的项目。

Spring Boot:使用默认开发配置来实现快速开发。

Spring XD:用来简化大数据应用开发。

Spring Cloud:为分布式系统开发提供工具集。

Spring Data:对主流的关系型和NoSQL数据库的支持。

Spring Integration:通过消息机制对企业集成模式(EIP)的支持。

Spring Batch:简化及优化大量数据的批处理操作。

Spring HATEOAS:基于HATEOAS 原则简化REST 服务开发。

Spring Social:与社交网络API (如Facebook、新浪微博等)的集成。

Spring AMQP:对基于AMQP的消息的支持。

Spring Mobile:提供对手机设备检测的功能,给不同的设备返回不同的页面的支持。

Spring for Android:主要提供在Android 上消费RESTful API 的功能。

Spring Web Flow:基于 Spring MVC 提供基于向导流程式的Web 应用开发。

Spring Web Services:提供了基于协议有限的SOAP/Web服务。

Spring LDAP:简化使用LDAP 开发。

Spring Session:提供一个API 及实现来管理用户会员信息。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值