Spring_总结_01_Spring概述

一、前言

从今天开始,重新总结一下Spring的相关知识,主要是结合《Spring实战(第四版)》和 《JavaEE开发的颠覆者——SpringBoot实战》这两本书以及官方文档,同时加入自己的一点点点小小小理解,如有不当之处,还请指正。

 

二、Spring最根本的使命

Spring框架是一个轻量级的企业级开发的一站式解决方案,所谓解决方案就是可以基于Spring解决JavaEE开发的所有问题。

事实上,Spring也确实在不断朝这个方向努力,从官方上列出的Spring产品就可以看出,同时这也反映出 Spring最根本的使命:简化Java开发

 

三、Spring框架的四大原则

为了简化Java开发,Spring框架所有功能的设计和实现都基于四大原则:

(1)使用POJO进行轻量级和最小侵入式开发

(2)通过依赖注入和基于接口编程实现松耦合

(3)通过AOP和默认习惯进行声明式编程

(4)使用AOP和模板(template)减少模式化代码

 

 

四、Spring 的六大模块

Spring是模块化的,这意味着你可以只使用你需要的 Spring 的模块。

                                                          图 1.1 Spring框架由6个定义良好的模块分类组成

 

1.核心容器(Core Container)

1 Spring-Core 核心工具类,Spring其他模块大量使用Spring-Core;
2 Spring-Bean Spring定义Bean的支持;
3 Spring-Context 运行时Spring容器;
4 Spring-Context-Support Spring容器对第三方包的集成支持;
5 Spring-Expression  使用表达式语言在运行时查询和操作对象。

 

2.AOP

1 Spring-AOP 基于代理的AOP支持
2 Spring-Aspects 基于AspectJ的AOP支持

 

3.消息(Messaging)

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

 

4.Web

1 Spring-Web 提供基础的Web集成的功能,在Web项目中提供Spring的容器。
2 Spring-Webmvc 提供基于Servlet的Spring MVC
3 Spring-WebSocket 提供WebSocket
4 Spring-Webmvc-Portlet 提供Portlet环境支持

 

4.数据访问/集成(Data Acess / Integration)

 

1 Spring-JDBC 提供以JDBC访问数据库的支持
2 Spring-TX 提供编程式和声明式的事务支持
3 Spring-ORM 提供对对象/关系映射技术的支持
4 Spring-OXM 提供对对象/XML映射技术的支持
5 Spring-JMS 提供对JMS的支持

 

 

 

五、Spring的生态

 

1 Spring Boot 使用默认开发配置来实现快速开发
2 Spring XD 用来简化大数据应用开发
3 Spring Cloud 为分部式系统开发提供工具集
4 Spring Data 对主流的关系型和NoSQL数据库的支持
5 Spring Integration 通过消息机制对企业集成模式(EIP)的支持
6 Spring Batch 简化及优化大量数据的批处理操作
7 Spring Security 通过认证和授权保护应用
8 Spring HATEOAS 基于HATEOAS原则简化了REST服务开发
9 Spring Social 与社交网络API(如Faceook、新浪微博、QQ等)的集成
10 Spring AMQP 对基于AMQP的消息的支持
11 Spring Mobile 提供对手机设备检测的功能,给不同的设备返回不同的页面的支持
12 Spring for Android 主要提供在Android上消费RESTful API的功能
13 Spring Web Flow 基于Spring MVC提供基于向导流程式的Web应用开发
14 Spring Web Services 提供了基于协议有限的SOAP/Web服务
15 Spring LDAP 简化使用LDAP开发
16 Spring Session 提供一个API及实现来管理用户会话信息

 

 

六、参考资料

1.《Spring实战(第四版)》

2.《JavaEE开发的颠覆者——SpringBoot实战》

 

posted @ 2018-07-26 23:28  shirayner  阅读(380)  评论(0编辑  收藏  举报