一、简介
Spring框架是澳大利亚计算机专家Rod Johnson(罗德·约翰逊)于2002年发布,诞生以来发布了很多版本,目前最新版是5.0
Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。
二、版本发展史
版本 | 日期 | |
---|---|---|
Spring 0.9 | 2002 年 | |
Spring 1.0 | 2004 年 03 月 | |
Spring 2.0 | 2006 年 10 月 | |
Spring 2.5 | 2007 年 11 月 | |
Spring 3.0 | 2009 年 12 月 | |
Spring 4.0 | 2013 年 12 月 | |
Spring 5.0 | 2017 年 09 月 | |
版本 | 时间 | 备注 |
--------------- | ------------- | ------------------------------------------------------------ |
Spring Boot 1.0 | 2014 年 4 月 | |
Spring boot 1.1 | 2014 年 6 月 | 改进的模板支持,elasticsearch 和 apache solr 的自动配置 |
Spring Boot 1.2 | 2015 年 3 月 | 升级到 servlet 3.1 / tomcat 8 / jetty 9,spring 4.1 升级,支持 banner / jms / SpringBootApplication 注解 |
Spring Boot 1.3 | 2016 年 12 月 | Spring 4.2 升级,新的 spring-boot-devtools,用于缓存技术(ehcache,hazelcast,redis 和 infinispan)的自动配置以及完全可执行的 jar 支持。 |
Spring boot 1.4 | 2017年1月 | spring 4.3 升级,支持 couchbase / neo4j,分析启动失败和RestTemplateBuilder。 |
Spring boot 1.5 | 2017年2月 | 支持 kafka / ldap,第三方库升级 |
Spring boot 2.0 | 2018 年 03 月 | 基于 Java 8,支持 Java 9,支持 Quartz ,调度程序大大简化了安全自动配置,支持嵌入式 Netty |
三、为什么要使用Spring?
轻量
Spring 是轻量的,基本的版本大约2MB。
控制反转(IOC)
Spring 通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。
面向切面的编程(AOP)
Spring 支持面向切面的编程,并且把应用业务逻辑和系统服务分开。
容器
Spring 包含并管理应用中对象的生命周期和配置。
MVC框架
Spring的WEB框架是个精心设计的框架,是Web框架的一个很好的替代品。
事务管理
Spring 提供一个持续的事务管理接口,可以扩展到上至本地事务下至全局事务(JTA)
异常处理
Spring 提供方便的API把具体技术相关的异常(比如由JDBC,Hibernate or JDO抛出的)转化为一致的unchecked 异常。
框架
Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型的是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等),将应用逻辑的开发留给开发者。
网友评论