Spring框架简介

Spring框架简介

Spring框架简介

Spring框架简介

1 Spring家族

第一阶段:Spring Core--包含AOC IOP等核心模块  Spring Data----连接数据  Spring Security---负责数据安全

第二阶段:Spring Boot----使得开发更加便捷

第三阶段:Spring cloud---微服务

第四阶段:Spring cloud dataflow--组合服务组件

2.Spring Core组成

Spring框架简介

1.Core模块

整个Spring框架构建在core核心模块中,它是整个框架的基础。在该模块中,Spring提供了一个IOC容器的实现,用于帮助我们通过依赖注入的方式管理对象之间的依赖关系;这个模块还包括框架中使用的各种工具类。

2.AOP模块

将面向对象和面向切面的方式进行结合,增强各POJO的能力

3.Spring JDBC和事务管理

还为业内主流的操作数据库框架提供了支持

4.JEE服务集成,以简化我们对这些服务的调用

5.Web模块:最被业界认可的就是Spring MVC框架

3.Spring源码架构

Spring框架简介

Spring的本质都是为了提供各种服务帮助我们简化基于简单java对象的应用程序的开发。

1.Test:单元测试,集成测试

2.Core Container:容器,Spring的核心部分,是Spring框架的基础

    Beans是所有应用都要用到的,它包含访问配置文件,创建和管理Bean,以及进行IOC和DI相关操作的类。

    Core包含了Spring框架的核心工具类,Spring其他部分都要使用到这个包里面的类。

    Context:Spring的上下文,也称为IOC容器,通过上下文,我们可以获取容器中的Bean。

    SpEL:提供了一个强大的表达式语言,用于在运行时查询和操作对象。可用于将Bean或者Bean属性注入到另外一个Bean,还支持Bean的方法调用。

3.Spring AOP主要由AOP、Aspects、Instrumentation三个模块组成。

     AOP设计了一系列方法级别的AOP横切实现,比如前置通知,返回通知,异常通知等。

    Aspects模块集成至AspectJ框架,与Instrumentation模块一样,是为了Spring AOP模块,提供多种实现方法。在提升AOP使用的便捷性的同时,进一步扩展AOP的功能。

    Instrumentation模块是Spring AOP的资源模块,该模块主要支持对象级别的切面编程。作用是在JVM启动时生成一个代理类,通过代理类在运行时修改类的字节从而改变一个类的功能。多用于面向有状态的类的切面编程。

4.Spring Messaging模块

    主要为继承Message API和消息协议提供支持,并解读为spring的报文,通过该模块,spring可以与市面主流的消息队列等进行消息生成与消费的集成。

5.Data Access/Integration数据访问和集成

   JDBC:提供对JDBC的封装功能,该模块的主要意义在于简化JDBC的使用

   Transactions: Spring JDBC事务控制实现的模块,对事务做了很好的封装,可以实现一个业务的完整流程。

   ORM:集成市面主流的ORM框架,比如hibernate/mybatis等

   JMS:提供消息队列的支持。

6.Web 模块:为web项目的开发提供支持

   Web:为spring提供了最基础的web支持

   WebMVC:主要实现了springMVC

   WebSocket:主要是让spring能够支持WebScoket,依赖于Messaging模块。

   WebFlux:基于响应式流,用来建立异步、非阻塞事件驱动的服务。

重点:Beans Core Context AOP

Spring框架简介

Spring框架简介

Spring框架简介

ApplicationContext是BeanFactory的超类,与BeanFactory的默认延迟加载策略不同,ApplicationContext容器实例化后会对所有的单实例Bean进行实例化,以及相关依赖关系的装配,使之处于待用状态。

Spring框架简介

Spring框架简介

4.Spring官方文档

spring.io 官网->Projects->Spring Framework->

Spring框架简介

Spring框架简介