1、历史

第一阶段:xml配置

在Spring1.x时代,使用Spring开发满眼都是xml配置的Bean,随着项目的扩大,我们需要把xml配置文件分布放到不同配置文件中,需要频繁的在开发的类和配置文件之间切换。

第二阶段:注解配置

在Spring2.x时代,JDK1.5带来的注解支持,Spring提供了声明Bean的注解(如@Component、@Service),大大减少了配置量。这个时候,注解配置和xml配置究竟哪个更好成为了一个争论。最终的选择是应用的基本配置如数据库配置用xml,业务配置用注解。

第三阶段:Java配置

从Spring3.x到现在,Spring提供了Java配置的能力。

2、概述

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

3、Spring的模块

(1)核心容器(Core Container)

Spring-Core:核心工具类

Spring-Beans: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

Spring-Webmvc

Spring-WebSocket

Spring-Webmvc-Portlet

(5)数据访问/集成

Spring-JDBC:jdbc访问数据库的支持

SPring-TX:提供编程式和声明式的事物支持

Spring-ORM:对象/关系映射的支持

Spring-OXM:对象/xml映射的支持

Spring-JMS:对JMS的支持

4、Spring的生态

Spring目前提供了大量基于Spring的项目,降低开发成本和难度、提高开发效率。

Spring Boot

SpringXD:简化大数据应用开发

Spring Cloud 分布式系统开发工具集

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

... ...

... ...

(一) Spring基础概述的更多相关文章

  1. Spring 基础知识

    Spring架构简单描述 原文:https://www.shiyanlou.com/courses/document/212 Spring 概述 1. Spring 是什么 Spring是一个开源的轻 ...

  2. Spring基础系列-AOP源码分析

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9560803.html 一.概述 Spring的两大特性:IOC和AOP. AOP是面向切 ...

  3. Spring Integration概述

    1.   Spring Integration概述 1.1     背景 Spring框架的一个重要主题是控制反转.从广义上来说,Spring处理其上下文中管理的组件的职责.只要组件减轻了职责,它们同 ...

  4. Spring Cloud 概述

    1. Spring Cloud 引言 首先我们打开spring 的官网:https://spring.io/ 我们会看到这样一张图片 这个图片告诉我们,开发我们的应用程序就像盖楼一样, 首先我们需要搭 ...

  5. (转)Spring的概述

    http://blog.csdn.net/yerenyuan_pku/article/details/69663685 Spring的概述 什么是Spring 据度娘所载: Spring是一个开源框架 ...

  6. 微服务与Spring Cloud概述

    微服务与Spring Cloud随着互联网的快速发展, 云计算近十年也得到蓬勃发展, 企业的IT环境和IT架构也逐渐在发生变革,从过去的单体应用架构发展为至今广泛流行的微服务架构. 微服务是一种架构风 ...

  7. Spring IOC 概述

    Spring IOC 概述 IOC(Inversion of Control) 控制反转,也叫 DI(D_ependency injection_) 依赖注入.是一种设计思想.不过我并不同意所谓反转的 ...

  8. Spring Boot学习第一部分(Spring 4.x)第一章(Spring 基础)

    1.spring概述 1.1.spring的简史 第一阶段:XML配置spring 1.x时代, 第二阶段:注解配置spring 2.x时代, @Controller @Service @Compon ...

  9. 1.Spring 框架概述

    目录 Spring 框架概述 1 我们所说的 "Spring "是什么意思 2. Spring和Spring框架的历史 3. 设计理念 4.反馈和贡献 5.开始使用 Spring ...

随机推荐

  1. C# DateTime的使用

    获得当前系统时间: DateTime dt = DateTime.Now; Environment.TickCount可以得到“系统启动到现在”的毫秒值 DateTime now = DateTime ...

  2. 模态框获取内容jQuery

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. Java 解决IE浏览器下载文件,文件名出现乱码问题

    /** * 区分ie 和其他浏览器的下载文件乱码问题 * @param request * @param fileName * @return */ public String getFileName ...

  4. mysql基础,数据表的类型

  5. 【CodeBase】PHP立即输出结果

    利用ob_flush输出缓冲区内容 /* *Author:YunGaZeon *usage:streamout($str) */ function streamout($str) { echo str ...

  6. PAT basic 1087

    1087 有多少不同的值 (20 分) 当自然数 n 依次取 1.2.3.…….N 时,算式 ⌊n/2⌋+⌊n/3⌋+⌊n/5⌋ 有多少个不同的值?(注:⌊x⌋ 为取整函数,表示不超过 x 的最大自然 ...

  7. 笔记-python-lib-内置函数

    笔记-python-lib-内置函数 注:文档来源为Python3.6.4官方文档 1.      built-in functions abs(x) 返回绝对值 all(iterable)   re ...

  8. 2 Model层 - 模型查询

    1.简介 查询集表示从数据库中获取的对象集合 查询集可以含有零个.一个或多个过滤器 过滤器基于所给的参数限制查询的结果 从Sql的角度,查询集和select语句等价,过滤器像where和limit子句 ...

  9. git上传自己的代码

    感谢这个哥们的博客,不过里面有些错误. http://www.cnblogs.com/ruofengzhishang/p/3842587.html 下面是我自己的实践成功的: 这篇文章写得是windo ...

  10. django 连接MYSQL时,数据迁移时报:django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE9\\x97\\xAE\\xE9\\xA2\\x98' for column 'name' at row 5")

    django 连接MYSQL时,数据迁移时报:django.db.utils.InternalError: (1366, "Incorrect string value: '\\xE9\\x ...