Lecture01-Spring简介

文章目录

    [toc]

    单词词性音标含义
    Springn./sprɪŋ/Spring框架(Java生态中主流的企业级应用开发框架,提供依赖注入、AOP等核心功能,简化开发)
    infrastructuren./ˈɪnfrəstrʌktʃə(r)/基础设施(编程中常指项目的底层支撑组件,如数据库连接、缓存、消息队列等基础服务)
    modularadj./ˈmɒdjələ(r)/模块化的(指按功能拆分组件,各自独立且可复用,如Spring的模块化设计,按需引入组件)
    designn. / v./dɪˈzaɪn/设计(编程中指系统架构或组件的设计模式、结构规划,如Spring的设计遵循多种设计模式)
    Frameworkn./ˈfreɪmwɜːk/框架(为开发提供基础结构和通用功能的工具集,如Spring Framework简化Java应用开发)
    Inversionn./ɪnˈvɜːʃn/反转(编程中与Control组成"Inversion of Control",即控制反转,是Spring的核心思想)
    Controln. / v./kənˈtrəʊl/控制("Inversion of Control"中表示程序执行流程的控制权,反转指将控制权从业务代码移交框架)
    Aspectn./ˈæspekt/切面(AOP中的核心概念,指横切多个模块的公共功能,如日志、事务管理等)
    Orientedadj./ˈɔːrientɪd/面向的(与其他词组合成编程范式,如"Object-Oriented"面向对象,"Aspect-Oriented"面向切面)
    Programmingn./ˈprəʊɡræmɪŋ/编程(与Oriented组合,如"Aspect-Oriented Programming"即AOP,面向切面编程,是Spring的核心特性之一)

    Lecture01-Spring简介

    1、一家公司

    官网地址:https://spring.io/


    2、Spring旗下的众多项目

    From configuration to security, web apps to big data—whatever the infrastructure needs of your application may be, there is a Spring Project to help you build it. Start small and use just what you need—Spring is modular by design.

    项目列表:https://spring.io/projects

    image-20250521085000323


    3、Spring Framework

    Spring 基础框架,可以视为 Spring 基础设施,基本上任何其他 Spring 项目都是以 Spring Framework 为基础的


    ①Spring Framework优良特性

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

    ②Spring Framework主要功能

    分类主要功能
    核心技术依赖注入、事件、资源管理、国际化(i18n)、验证、
    数据绑定、类型转换、Spring表达式语言(SpEL)、面向切面编程(AOP)
    测试模拟对象、TestContext框架、Spring MVC测试、WebTestClient
    数据访问事务管理、DAO支持、JDBC、ORM、XML编组
    Web框架Spring MVC和Spring WebFlux Web框架
    集成远程调用、JMS、JCA、JMX、邮件、任务、调度、缓存和可观测性
    语言支持Kotlin、Groovy、动态语言
    end