• Spring 介绍和Spring 5 源码环境搭建


    1、Bean的发展

    Java Bean  -->  EJB  --> POJO

    JavaBean是Applet Bean演变而来

    EJB: Enterprise Java Beans (已经成为历史)

    POJO: Plain Ordinary Java Object 简单的JavaBean

    2、为什么要使用Spring (简化开发)

    如果不用Spring,怎么开发项目: Servlet + Jsp

    Spring 简化开发四个基本策略

    1) 基于POJO的轻量级和最小侵入性编程

    2) 通过依赖注入(DI)和面向接口松耦合

    3) 基于切面(AOP)和惯性进行声明式编程

    4) 通过切面 (AOP)和模板减少样板代码

    DI和AOP依赖于IOC

    3、Spring 5 模块结构图

    Spring不仅是一个框架,已然成为一种生态。

    Spring Framework 5 Runtime

     1) Spring的核心模块  Core Container

    模块名称 主要功能
    spring-core 依赖注入IOC和DI的基本实现
    spring-beans Bean工厂与Bean的装配
    spring-context 定义基础的Spring的Context上下文 即IOC容器
    spring-context-support 对Spring IOC容器的扩展支持,以及IOC子容器
    spring-context-indexer Spring的类管理组件和Classpath扫描
    spring-expression Spring表达式语言

    2) Spring之切面面层

    模块名称 主要功能
    spring-aop 面向切面编程的应用模块,整合Asm,CGLib,JDKProxy
    spring-aspects 集成AspectJ(AOP应用框架)
    spring-instrument 动态Class Loading模块

    3) Spring之数据访问

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

    4) Spring之Web组件

    模块名称 主要功能
    spring-web 提供了最基础的Web支持,主要建立于核心容器之上,通过Servlet或者Listeners来初始化IOC容器
    spring-webmvc 实现了Spring MVC(model-view-Controller)的web应用。如Controller,RequestMapping等
    spring-websocket 主要与Web前端实现的全双工通讯的协议
    spring-webflux 一个新的非阻塞函数式Reactive Web框架,可以用来建立异步的,非阻塞,事件驱动的服务。
       

    5) Spring 之通信报文

    模块名称 主要功能
    spring-message 从Spring4开始新加入的一个模块,主要职责是为Spring框架集成一些基础的报文传送应用。

    6) Spring 之集成测试

    模块名称 主要功能
    spring-test 主要为测试提供支持

    7) Spring 之集成兼容

    模块名称 主要功能
    spring-framework Bill of Materials。 解决Spring的不同模块依赖版本不同问题。

    Spring各个模块的依赖关系

    4、源码构建

    1) 安装gradle

    这里的版本为gradle4.0

    2) 下载Spring源码

    这里下载的版本是spring-framework-5.0.2.RELEASE

    cd  D:BaiduNetdiskDownloadSpringspring-framework-5.0.2.RELEASE

    执行 gradlew.bat

    如下图所示,说明构建成功

    3) 使用IDEA打开

    开始导入工程,File->import project->选中spring-framework工程->import from external model->Gradle->finish经过一段时间项目导入成功

    选择Import Project

    选择Gradle

    打开的路径如下图所示

    作者:Work Hard Work Smart
    出处:http://www.cnblogs.com/linlf03/
    欢迎任何形式的转载,未经作者同意,请保留此段声明!

  • 相关阅读:
    ThreadLocal
    volatile的理解
    二叉搜索树
    springboot中URL带有斜杠的转义字符%2F导致的400错误
    深入理解字符串
    Gradle安装与Idea配置
    基本数据类型和包装类
    Windows系统MongoDB安装
    Java程序是如何执行的?
    sshd服务器搭建管理和防止暴力破解
  • 原文地址:https://www.cnblogs.com/linlf03/p/14490997.html
Copyright © 2020-2023  润新知