写点什么

SpringFramework 初识

作者:fake smile by
  • 2022 年 9 月 13 日
    黑龙江
  • 本文字数:1325 字

    阅读完需:约 4 分钟

Spring 的优势

Spring 框架主要的优势是在简化开发框架整合上。


  • 简化开发: Spring 框架中提供了两个大的核心技术,分别是:

  • ==IOC==

  • ==AOP==

  • ==事务处理==

  • 1.Spring 的简化操作都是基于这两块内容,所以这也是 Spring 学习中最为重要的两个知识点。

  • 2.事务处理属于 Spring 中 AOP 的具体应用,可以简化项目中的事务管理,也是 Spring 技术中的一大亮点。

  • 框架整合: Spring 在框架整合这块已经做到了极致,它可以整合市面上几乎所有主流框架,比如:

  • ==MyBatis==

  • MyBatis-plus

  • Struts

  • Struts2

  • Hibernate

  • ……

Spring 家族

Spring 并不是单一的一个技术,而是一个大家族,可以从官网的Projects中查看其包含的所有技术。



其中有三个我们要着重关注:



  • Spring Framework:Spring 框架,是 Spring 中最早最核心的技术,==也是所有其他技术的基础==。

  • SpringBoot:Spring 是来简化开发,而 SpringBoot 是来帮助 Spring 在简化的基础上能更快速进行开发。

  • SpringCloud:这个是用来做分布式之微服务架构的相关开发。


除了上面的这三个技术外,还有很多其他的技术,也比较流行,如 SpringData,SpringSecurity 等,这些都可以被应用在我们的项目中。

Spring 发展史


Spring 发展史


  • IBM(IT 公司-国际商业机器公司)在 1997 年提出了 EJB 思想,早期的 JAVAEE 开发大都基于该思想。

  • Rod Johnson(Java 和 J2EE 开发领域的专家)在 2002 年出版的Expert One-on-One J2EE Design and Development,书中有阐述在开发中使用 EJB 该如何做。

  • Rod Johnson 在 2004 年出版的Expert One-on-One J2EE Development without EJB,书中提出了比 EJB 思想更高效的实现方案,并且在同年将方案进行了具体的落地实现,这个实现就是 Spring1.0。

  • 随着时间推移,版本不断更新维护,目前最新的是 Spring5

  • Spring1.0 是纯配置文件开发

  • Spring2.0 为了简化开发引入了注解开发,此时是配置文件加注解的开发方式

  • Spring3.0 已经可以进行纯注解开发,使开发效率大幅提升,我们的课程会以注解开发为主

  • Spring4.0 根据 JDK 的版本升级对个别 API 进行了调整

  • Spring5.0 已经全面支持 JDK8,现在 Spring 最新的是 5 系列所以建议大家把 JDK 安装成 1.8 版

Spring Framework 系统架构

Spring Framework 是 Spring 生态圈中最基础的项目,是其他项目的根基。Spring Framework 的发展也经历了很多版本的变更,每个版本都有相应的调整:



Spring Framework 的 5 版本目前没有最新的架构图,而最新的是 4 版本,所以接下来主要研究的是 4 的架构图



系统架构图都是上层依赖于下层。例如:AOP 技术就离不开核心容器


(1)核心层


  • Core Container:核心容器,这个模块是 Spring 最核心的模块,其他的都需要依赖该模块

  • 看到容器我们就知道是用来装东西的,而在 java 中只有一种东西可以装,那就是对象。所以根据这样的结构设计来看,Spring Framework 是用来管对象的一门技术


(2)AOP 层


  • AOP:面向切面编程,它依赖核心层容器,目的是==在不改变原有代码的前提下对其进行功能增强==

  • Aspects:AOP 是思想,Aspects 是对 AOP 思想的具体实现


(3)数据层


  • Data Access:数据访问,Spring 全家桶中有对数据访问的具体实现技术

  • Data Integration:数据集成,Spring 支持整合其他的数据层解决方案,比如 Mybatis

  • Transactions:事务,Spring 中事务管理是 Spring AOP 的一个具体实现


(4)Web 层


  • 这一层的内容将在 SpringMVC 框架具体学习


(5)Test 层


  • Spring 主要整合了 Junit 来完成单元测试和集成测试


发布于: 刚刚阅读数: 5
用户头像

fake smile by

关注

还未添加个人签名 2022.07.31 加入

还未添加个人简介

评论

发布
暂无评论
SpringFramework初识_spring_fake smile by_InfoQ写作社区