当前位置: 首页 > news >正文

Spring6:1 概述

Spring6:1 概述

标签

  • JAVA
  • Spring

在这里插入图片描述

目录

  1. Spring 是什么?
  2. Spring 的狭义和广义
    • 广义的 Spring:Spring 技术栈
    • 狭义的 Spring:Spring Framework
  3. Spring Framework 特点
  4. Spring 模块组成
  5. Spring6 特点
    • 版本要求
    • 本课程软件版本

1. 概述

1.1 Spring 是什么?

Spring 是一款主流的 Java EE 轻量级开源框架,由“Spring 之父”Rod Johnson 提出并创立,其目的是用于简化 Java 企业级应用的开发难度和开发周期。
Spring 的用途不仅限于服务器端的开发,从简单性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。

自 2004 年 4 月发布 Spring 1.0 版本以来,Spring 已经发展到第 6 个大版本,本课程采用当前最新版本 6.0.2

在这里插入图片描述


1.2 Spring 的狭义和广义

广义的 Spring:Spring 技术栈

广义上的 Spring 泛指以 Spring Framework 为核心的 Spring 技术栈。
Spring 包含多个子项目,如 Spring MVC、Spring Boot、Spring Cloud 等,涵盖企业级开发到云计算等领域,为开发人员提供一站式解决方案。

狭义的 Spring:Spring Framework

狭义上的 Spring 特指 Spring Framework,它是一个分层的轻量级解决方案,是 Spring 技术栈的核心与基础。
Spring 核心模块包括:

  • IoC(控制反转):将对象的创建过程交由 Spring 管理。
  • AOP(面向切面编程):封装公共逻辑,减少代码冗余。

1.3 Spring Framework 特点

  • 非侵入式:对应用程序的结构影响小,保持代码清洁优雅。
  • 控制反转(IoC):通过注入机制简化资源管理。
  • 面向切面编程(AOP):增强代码功能而无需修改源代码。
  • 容器化:管理组件对象的生命周期,提升开发效率。
  • 组件化:通过 XML 或注解配置,简化复杂应用的构建。
  • 一站式:整合企业应用框架和第三方库,全面满足开发需求。

1.4 Spring 模块组成

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

Spring Modules
Spring Modules

Spring 模块包括:

  1. Spring Core(核心容器):提供 IoC 和 DI 的核心实现。
  2. Spring AOP:实现面向切面编程的功能。
  3. Spring Data Access:提供 JDBC 和 ORM 的支持。
  4. Spring Web:支持基础 Web 开发到 WebFlux 的非阻塞式框架。
  5. Spring Messaging:支持消息传递功能。
  6. Spring Test:封装 JUnit 集成测试支持。

1.5 Spring6 特点

1.5.1 版本要求
  • Spring6 要求最低 JDK 版本为 JDK 17。

在这里插入图片描述

1.5.2 本课程软件版本
  • IDEA:2022.1.2
  • JDK:Java 17
  • Spring:6.0.2
http://www.lryc.cn/news/499087.html

相关文章:

  • Python Selenium 各浏览器驱动下载与配置使用(详细流程)
  • C语言期末考试——重点考点
  • mongo开启慢日志及常用命令行操作、数据备份
  • Mybatis-Plus的主要API
  • 2023 年“泰迪杯”数据分析技能赛B 题企业财务数据分析与造假识别
  • 【SpringMVC】参数传递 重定向与转发 REST风格
  • 性能测试需求分析(超详细总结)
  • 显卡(Graphics Processing Unit,GPU)架构详细解读
  • 【大语言模型】ACL2024论文-24 图像化歧义:Winograd Schema 挑战的视觉转变
  • AcWing 2868. 子串分值
  • 如何进行 JavaScript 性能优化?
  • 使用TCP编程实现简单登录功能
  • 卷积神经网络(CNN)的层次结构
  • 操作系统文件管理相关习题2
  • react 通过ref调用子组件的方法
  • 【计算机网络】 —— 数据链路层(壹)
  • AcWing 93. 递归实现组合型枚举
  • vscode 折叠范围快捷键
  • RabbitMQ 实现分组消费满足服务器集群部署
  • Chromium网络调试篇-Fiddler 5.21.0 使用指南:捕获浏览器HTTP(S)流量(二)
  • 个人IP建设:简易指南
  • 智能指针【C++11】
  • 【Linux 篇】Docker 启动和停止的精准掌舵:操控指南
  • Cursor vs VSCode:主要区别与优势分析
  • 从单体到微服务:如何借助 Spring Cloud 实现架构转型
  • RocketMq基础学习+SpringBoot集成
  • 分布式cap
  • mybatis-xml映射文件及mybatis动态sql
  • 计算机网络复习——概念强化作业
  • 用友BIP与旺店通数据集成方案解析