1.1 Spring概述

简介: <div style="background-color:inherit">    Spring是分层的Java SE/EE应用一站式的轻量开源框架,以 <span style="background-color:inherit">反转控制</span>(Inverse of Control,<span style="background-color:inherit">IoC</span>
    Spring是分层的Java SE/EE应用一站式的轻量开源框架,以  反转控制(Inverse of Control, IoC)、 面向切面编程(Aspect Oriented Programming, AOP)为内核,提供了展现层Spring MVC、持久层Spring JDBC以及业务层事务管理等众多的企业级应用技术。此外,Spring整合了众多著名第三方框架和类库。

1、发展史--Rod Johnson
  • Spring的框架首次在2003年6月的Apache 2.0的使用许可中发布;
  • 第一个具有里程碑意义的版本是2004年3月发布的1.0;
  • 2004年9月和2005年3月先后又有重要的版本面世;
  • Spring Framework 首个版本是在 2004 年发布的,其后包括几个重大版本改进。Spring 2.0 提供了 XML 命名空间和 AspectJ 支持;Spring 2.5 包含注解驱动的配置;Spring 3.0 引入加强的 Java 5+ 基础和 @configuration 模型。
  • 而 Spring 4.0 是最新的主要版本,这是首个完全支持 Java 8 特性的框架,该版本最低要求 Java SE 6 的支持。删除了废弃的方法和类。

2、优点

  1. 方便解耦,简化开发;
  2. AOP编程的支持;
  3. 声明式事物的支持;
  4. 方便程序测试;
  5. 方便集成各种优秀框架;
  6. 降低Java EE API使用难度;
  7. 源码设计精妙、结构清晰,Java技术的最佳时间范例。

3、Spring 4.0 体系结构图:

可对比旧体系结构,如下:

4、Spring 4.0的新特性:
  • Java 8诸多特性的支持;
  • 使用Groovy DSL定义外部的Bean配置,这类似于XML Bean声明,但是语法更为简洁。使用Groovy还能够在启动代码中直接嵌入Bean的声明。
  • 核心容器功能的改进(支持泛型依赖注入;使用meta-annoation方式定义Annotation时, 该Annotation可以访问源Annotation的部分属性,以更加方便的定制自己想要的Annotation;Bean依赖注入到Map和List,Array中, 即提供了一种方式获取到某个类型的所有Bean,当注入到Map中时, Key为Bean的名字,value为Bean实例。)
  • Web开发改进(增加了@RestController annotation、AsyncRestTemplate类;Spring4.0基于Servlet3.0+版本开发;为Spring MVC应用增加了Timezone的支持,可以在RequestContext获取,设置TimeZone信息,Spring还提供Datetime的转换功能;提供了 WebSocket, SockJS, and STOMP Messaging的支持;支持STOMP Message协议)
  • 测试框架改进 (几乎所有spring-test模块下的annotation都可以做元annoation, 开发者就可以更方便得定制自己的annotation,以增强代码表现力和减少多个Test之间的重复代码;增加了一种更灵活的ActiveProfiles的决定方式;添加了SocketUtils类帮忙扫描本地机器上的可用Socket端口;org.springframework.mock.web包下的Mock类都与Servlet 3.0兼容了;删除了所有废弃的方法和类)
  • 参考:http://ningandjiao.iteye.com/blog/1993481

5、结构阐述
IoC
将类和类之间的依赖从代码中脱离,用配置的方式进行依赖关系描述,由IOC容器负责依赖类之间的创建、拼接、管理、获取等。



目录
相关文章
|
6月前
|
设计模式 开发框架 Java
Spring及工厂模式概述
Spring及工厂模式概述
54 8
|
5月前
|
XML Java 数据格式
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
47 1
|
1月前
|
Java 数据库连接 数据库
让星星⭐月亮告诉你,SSH框架01、Spring概述
Spring是一个轻量级的Java开发框架,旨在简化企业级应用开发。它通过IoC(控制反转)和DI(依赖注入)降低组件间的耦合度,支持AOP(面向切面编程),简化事务管理和数据库操作,并能与多种第三方框架无缝集成,提供灵活的Web层支持,是开发高性能应用的理想选择。
36 1
|
3月前
|
Java API Spring
Spring5入门到实战------1、Spring5框架概述、入门案例
这篇文章是Spring5框架的入门教程,概述了Spring框架的核心概念和特点,并通过一个创建普通Java类的案例,详细演示了从下载Spring核心Jar包、创建配置文件、编写测试代码到运行测试结果的完整流程,涵盖了Spring IOC容器的使用和依赖注入的基本用法。
|
6月前
|
安全 前端开发 Java
学习从Struts迁移到Spring的策略概述
从Struts框架迁移到Spring框架是一个常见的升级路径,主要是为了利用Spring框架提供的更多功能、更好的模块化支持以及更广泛的社区资源。
96 3
|
5月前
|
XML 开发框架 Java
Spring框架第一篇(Spring概述与IOC思想)
Spring框架第一篇(Spring概述与IOC思想)
|
6月前
|
安全 Java 大数据
Spring概述、系统架构及核心概念
Spring概述、系统架构及核心概念
205 0
|
5月前
|
开发框架 前端开发 Java
Spring概述(1)
Spring概述(1)
49 0
|
6月前
|
前端开发 Java 应用服务中间件
Spring MVC框架概述
Spring MVC 是一个基于Java的轻量级Web框架,采用MVC设计模型实现请求驱动的松耦合应用开发。框架包括DispatcherServlet、HandlerMapping、Handler、HandlerAdapter、ViewResolver核心组件。DispatcherServlet协调这些组件处理HTTP请求和响应,Controller处理业务逻辑,Model封装数据,View负责渲染。通过注解@Controller、@RequestMapping等简化开发,支持RESTful请求。Spring MVC具有清晰的角色分配、Spring框架集成、多种视图技术支持以及异常处理等优点。
83 1
|
6月前
|
安全 Java API
第1章 Spring Security 概述(2024 最新版)(下)
第1章 Spring Security 概述(2024 最新版)
103 0