• 一幅长文细学Spring(一)——Spring简介


    1 Spring简介

    1.1 Spring概述

    1.1.1 Spring是什么

    官网Spring | Home

    说明:Spring是分层的JavaSE/EE应用full-stack轻量级开源框架,以IOC(Inverse of Control)AOP(Aspect OrientedProgramming)为内核;其提供了展现层SpringMVC和持久层SpringJDBCTemplate以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的JavaEE企业应用开源框架。


    1.1.2 Spring的优势

    优点

    • 方便解耦,简化开发:通过Spring提供的IoC容器,可以将对象间的依赖关系交由Spring进行控制,避免硬编码所造成的过度耦合。用户不必再为单例模式类、属性文件解析等这些底层的需求编写代码,可以更专注于上层的应用。
    • AOC的编程支持:通过Spring的Aop功能,方便进行面向切片编程,许多不容易用传统OPP实现的功能可以通过AOP轻松实现。
    • 声明式事务的支持:可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活的进行事务管理,提高开发效率和质量。
    • 方便程序的测试:可以用非容器依赖的编程方式进行几乎所有的测试工作,测试不再是昂贵的操作,而是随手可做的事。
    • 方便集成各种优秀的框架:Spring对各种优秀框架的支持。
    • 降低JavaEEAPI的使用难度:Spring对JavaEEAPI进行薄薄的封装层,使这些API的使用难度大大降低。
    • Java源码是经典学习范例:Spring的源代码设计精巧、结构清晰、匠心独用,处处体现着大师对Java设计模式灵活运用以及对Java技术的高深造诣。

    1.2 Spring系统架构

    image-20220807163201784


    1.2.1 SpringFrameWork特性

    说明:SpringFramework是Spring基础框架,可以视为Spring基础设施,基本上任何其他Spring项目都是以SpringFramework为基础的。

    特性

    • 非侵入式:使用Spring Framework开发应用程序时,Spring对应用程序本身的结构影响非常小。对领域模型可以做到零污染;对功能性组件也只需要使用几个简单的注解进行标记,完全不会破坏原有结构,反而能将组件结构进一步简化,这使得SpringFramework开发应用程序时结构清晰,简洁优雅。
    • 控制反转IOC:IOC全名为Inversion of Control,反转资源获取方向。把自己创建资源、向环境索要资源变成环境将资源准备好,我们享受资源注入
    • 面向切片编程AOP:AOP全名为Aspect Oriented Programming,在不修改源代码的基础上增强代码功能。
    • 容器:Spring IOC是一个容器,因为它包含并且管理组件对象的声明周期,组件享受到了容器化的管理,替 程序员屏蔽了组件创建过程中的大量细节,极大地降低了使用门槛,大幅度提高了开发效率
    • 组件化:Spring实现了简单的组件配置组合成一个复杂的应用。
    • 声明式:很多以前需要编写代码才能实现的功能,现在只需要声明需求即可由框架代为实现。
    • 一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库。而且Spring旗下的项目已经覆改了广泛领域,很多方面的功能性需求可以在Spring Framework的基础上全部使用Spring来实现。

    1.2.2 SpringFramework五大功能模块

    功能模块功能介绍
    Core Container核心容器,在Spring环境下使用任何功能都必须基于IOC容器
    AOP&Aspects面向切面编程
    Testing提供了junit或TestNG测试框架的整合
    Data Access/Integration提供了对数据访问/集成的功能
    Spring MVC提供了面向web应用程序的集成功能

  • 相关阅读:
    【C++11】QT开发中常用的C++11特性
    JUC并发编程——线程池学习:基础概念及三大方法、七大参数、四大拒绝策略(基于狂神说的学习笔记)
    2022牛客蔚来杯第十场 FHIE
    【C语言刷题】双指针原地修改数组(力扣原题分析)
    [PAT-Advanced] A1025. PAT Ranking (25)
    14届蓝桥杯青少组选拔赛C++_2022.11.27
    Reactive Programing与“响应式”
    C++ Decltype 关键字
    C专家编程 第11章 你懂得C,所以C++不再话下 11.1 初识OOP
    百度地图实现 区域高亮
  • 原文地址:https://blog.csdn.net/chengyuhaomei520/article/details/127107794