1. Spring概览

简化Java开发的。Spring不仅只是一个框架,Spring已经成为了一种生态。(与其说是Java开发,不如说是Spring开发)
一个Java应用层程序,是由许多个类组成的,这些类之间必然存在依赖关系,当项目越来越大,依赖关系越来越复杂,需要一个专业的框架来处理类之间的依赖关系,为了解决这个问题,SUN公司推出了EJB(重量级)专门用来解决类的依赖问题。
Spring(Spring Framework) 是一个开源框架,最早由Rod Johnson创建,并在《Expert Oneon-One:J2EE Design and Development》这本著作中进行了介绍。Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情。但Spring不仅仅局限于服务器端开发,任何Java应用都能在简单性、可测试性和松耦合等方面从Spring中获益。
bean的各种名称……虽然Spring用bean或者JavaBean来表示应用组件,但并不意味着Spring组件必须要遵循JavaBean规范。一个Spring组件可以是任何形式的POJO(POJO(Plain Ordinary JavaObject)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称)。
Spring 可以做非常多的事情。但归根结底,支撑Spring的仅仅是少许的基本理念,所有的理念都可以追溯到Spring最根本的使命上:简化Java开发。这是一个郑重的承诺。许多框架都声称在某些方面做
了简化,但Spring的目标是致力于全方位的简化Java开发。这势必引出更多的解释,Spring是如何简化Java开发的?
为了降低Java开发的复杂性,Spring采取了以下4种关键策略:

  • 基于POJO的轻量级和最小侵入式编程;
  • 通过控制反转和依赖注入以及面向接口实现松耦合;
  • 基于切面和惯例进行声明式编程;
  • 通过切面和模板减少样板式代码。

2.环境准备

2.1 jar包下载

spring sowing内容概括 spring sowing故事梗概_spring sowing内容概括


spring sowing内容概括 spring sowing故事梗概_Java_02


将下载的dist压缩包解压缩:

spring sowing内容概括 spring sowing故事梗概_spring_03

spring sowing内容概括 spring sowing故事梗概_spring_04


2.2 相关核心的模块说明

Spring核心模块

模块名称 主要功能

  • spring-core 依赖注入IoC与DI的最基本实现
  • spring-beans Bean工厂与Bean的装配
  • spring-context 定义基础的Spring的Context上下文及IoC容器
  • spring-context-support 对Spring IoC 容器的扩展支持、以及IoC子容器
  • spring-expression Spring表达式语言

Spring切面编程模块

  • spring-aop 面向切面编程的应用模块
  • spring-aspects 整合AspectJ、AOP应用框架
  • spring-instrument 动态Class Loading 模块

Spring之数据访问和集成模块

  • spring-jdbc Spring提供的JDBC抽象框架的主要实现模块、用于简化Spring JDBC操作
  • spring-tx Spring JDBC 事务控制实现模块
  • spring-orm 主要集成Hibernate、Java Persistence API(JPA) 和 Java Data Object (JDO)
  • spring-oxm 将Java对象映射成XML数据、或者将XML数据映射为Java对象
  • spring-jms Java Messaging Service能够发送和接收消息

Spring值Web模块

  • spring-web 提供了最基本的Web支持、主要建立与核心容器之上、通过Servlet或者
    Listener来初始化IoC容器
  • springwebmvc 实现了Spring MVC 的Web应用
  • springwebsocket 主要是与Web前端的全双工通讯的协议

Spring测试和通信报文模块

  • spring-test 为测试提供支持
  • springmessaging 从Spring4开始新加入的一个模块。主要的职责是为Spring框架集成一些基础的报文传送应用

4. Spring的结构图

spring sowing内容概括 spring sowing故事梗概_spring sowing内容概括_05


spring sowing内容概括 spring sowing故事梗概_Java_06