鸟瞰spring
一、spring框架概述:
Spring框架主要提供了Ioc容器、AOP、数据访问、Web开发、消息、测试等相关技术的支持。
1、Spring的模块
1)核心容器
Spring-Core:核心工具类,Spring其他模块大量使用Spring-Core;
Spring-Bean:Spring定义Bean的支持;
Spring-Context:运行时Spring容器;
Spring-Context-Support:Spring容器对第三方的集成支持;
Spring-Expression:使用表达式语言在运行时查询和操作对象。
2)AOP
Spring-AOP:基于代理的AOP支持;
Spring-Aspects:基于AspectJ的AOP支持;
3)消息(Message)
Spring-Message:对消息架构和协议的支持。
4)Web
Spring-Web:提供基础的Web集成功能,在Web项目中提供Spring的容器;
Spring-Webmvc:提供基于Servlet的SpringMVC;
Spring-WebSocket:提供WebSocket功能;
Spring-Webmvc-Portlet:提供Portlet环境支持。
5)数据访问/集成(Data Access/Integration)
Spring-JDBC:提供以JDBC访问数据库的支持;
Spring-TX:提供编程式和声明式的事务支持;
Spring-ORM:提供对对象/关系映射技术的支持;
Spring-OXM:提供对对象/xml映射技术的支持;
Spring-JMS:提供对JMS的支持。
2、Spring的生态
Spring Boot:使用默认开发配置来实现快速开发。
Spring XD:用来简化大数据应用开发。
Spring Cloud:为分布式系统开发提供工具集。
Spring Data:对主流的关系型和NoSQL数据库的支持。
Spring Integration:通过消息机制对企业集成模式(EIP)的支持。
Spring Batch:简化及优化大量数据的批处理操作。
Spring Security:通过认证和授权保护应用。
Spring HATEOAS:基于HATEOAS原则简化REST服务开发。
Spring Social :与社交网络API的集成。
Spring AMQP:对基于AMQP的消息的支持。
Spring Mobile:提供对手机设备检查的功能,给不同的设备返回不同的页面的支持。
Spring for Android:主要提供在Android上消费RESTful API的功能。
Spring Web Flow:基于Spring MVC提供基于向导流程式的Web应用开发。
Spring Web Service:提供基于协议有限的SOAP/Web服务。
Spring LDAP:简化使用LDAP开发。
Spring Session:提供一个API及实现来管理用户回话信息。
写在后面:
最近学习状态下滑很快,希望通过写博客的方式让自己静下来,顺便系统的回顾一下最近学习的Spring及Spring boot的相关知识。在开始学习Spring boot之前,还是再次回顾一下Spring的常用知识,以便更好的理解Spring的设计思想。最近听过一句话感受特别深:莫在浮沙筑高台。下一篇博客会开始记录Spring的java配置,许多书籍都推荐注解和java配置结合的方式来进行配置,而自己以前都习惯注解和XML的方式来配置。关于Ioc和AOP的知识概念这儿就打算略过了,我们可以通过各种途径了解到依赖注入和面向切面编程的思想。当然结合项目实例才能逐渐加深我们的理解。所以多动手是提升自己思维的必要手段,这也是我开始写博客的初衷。最后,还是那句话,莫在浮沙筑高台!
鸟瞰spring的更多相关文章
- spring 第一篇(1-3):鸟瞰spring蓝图
如你所见,spring框架的核心是关注于如何使用DI.AOP和模板来让企业级java开发变得更简单.spring确实也是这样做的,所以很值得你去使用它.不过spring内容可能比你所能看到的要多很多. ...
- 第23章 Spring MVC初体验
23.1 鸟瞰Spring MVC 粗略的介绍了SpringMVC的主要组成部分,SpringMVC作为一个Web层的框架,最大的作用是把我从繁重的web.xml文件编写中解救出来,再也不要不停的添加 ...
- Spring中眼花缭乱的BeanDefinition
本篇博客主要参考:Spring官网阅读(四)BeanDefinition(上) 引入主题 为什么要读Spring源码,有的人为了学习Spring中的先进思想,也有的人是为了更好的理解设计模式,当然也有 ...
- 基于spring注解AOP的异常处理
一.前言 项目刚刚开发的时候,并没有做好充足的准备.开发到一定程度的时候才会想到还有一些问题没有解决.就比如今天我要说的一个问题:异常的处理.写程序的时候一般都会通过try...catch...fin ...
- 玩转spring boot——快速开始
开发环境: IED环境:Eclipse JDK版本:1.8 maven版本:3.3.9 一.创建一个spring boot的mcv web应用程序 打开Eclipse,新建Maven项目 选择quic ...
- Spring基于AOP的事务管理
Spring基于AOP的事务管理 事务 事务是一系列动作,这一系列动作综合在一起组成一个完整的工作单元,如果有任何一个动作执行失败,那么事务 ...
- [Spring]IoC容器之进击的注解
先啰嗦两句: 第一次在博客园使用markdown编辑,感觉渲染样式差强人意,还是github的样式比较顺眼. 概述 Spring2.5 引入了注解. 于是,一个问题产生了:使用注解方式注入 JavaB ...
- 学习AOP之透过Spring的Ioc理解Advisor
花了几天时间来学习Spring,突然明白一个问题,就是看书不能让人理解Spring,一方面要结合使用场景,另一方面要阅读源代码,这种方式理解起来事半功倍.那看书有什么用呢?主要还是扩展视野,毕竟书是别 ...
- 学习AOP之深入一点Spring Aop
上一篇<学习AOP之认识一下SpringAOP>中大体的了解了代理.动态代理及SpringAop的知识.因为写的篇幅长了点所以还是再写一篇吧.接下来开始深入一点Spring aop的一些实 ...
随机推荐
- socket 异步通信的一些问题
socket通信在使用时被封装很简单,像操作文件一样简单,正是因为简单里面好多细节需要深入研究一下. windows下通信有select和iocp方式,select是传统方式,在socket里使用re ...
- 玩玩微信公众号Java版之三:access_token及存储access_token
微信官方参考文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183 基本说明: access_token是 ...
- 51nod_1639:绑鞋带
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1639 #include <bits/stdc++.h& ...
- nyoj_16:矩形嵌套
DAG上的动态规划 小技巧:max_element(a, a+n)返回的是数组a从下标0的位置到下标n-1的位置中的n个元素中最大元素的地址. 题目链接: http://acm.nyist.net/J ...
- javascript中this的用法
this是Javascript语言的一个关键字. 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如, function test(){ this.x = 1; } 随着函数使用场合的 ...
- 关于ALTERA生成IP核卡住
最近搞fft,用的quartus13.1版本,发现quartus和modelism存在各种各样的坑啊,fftIP核大家可能也遇到过ip核 生成到一半就卡住的问题,之前我是通过换系统解决的,但是好景不长 ...
- 冒泡排序和选择排序(Go语言实现)
冒泡排序和选择排序是排序算法中比较简单和容易实现的算法.冒泡排序的思想为:每一次排序过程,通过相邻元素的交换,将当前没有排好序中的最大(小)移到数组的最右(左)端.而选择排序的思想也很直观:每一次排序 ...
- [补档]Cube
Cube 题目 给你一个n×m的棋盘,有一个1×1×2的长方体竖直放在(1,1)上,你可以将其在棋盘上滚动,你的目标是让其竖直放在(n,m)上,问至少需要多少次操作.(放倒.竖直.翻滚) INPUT ...
- Uva 548 二叉树的递归遍历lrj 白书p155
直接上代码... (另外也可以在递归的时候统计最优解,不过程序稍微复杂一点) #include <iostream> #include <string> #include &l ...
- 字符串常用-----atof()函数,atoi()函数
头文件:#include <stdlib.h>函数 atof() 用于将字符串转换为双精度浮点数(double),其原型为:double atof (const char* str);at ...