Spring 生态是一套分层 , 解耦且高度协同的技术体系
所有产品围绕 Spring Framework(Spring 核心框架)构建 , 核心框架是整个生态的基础与核心依赖 , 其他产品(Spring Boot , Spring Cloud 等)都是在其基础上的封装 , 扩展或领域化增强 , 最终形成"核心奠基 , 上层赋能 , 领域聚焦"的完整技术栈 , 支撑从单体应用到分布式微服务的全场景开发
1.Spring Framework(核心框架)
Spring 生态的基础,提供依赖注入(DI)、控制反转(IoC)、面向切面编程(AOP)等核心能力,支撑事务管理、数据访问、Web 开发等基础功能。
|-------------------------|----------------------------------------------------------|
| 核心模块 | 功能描述 |
| Core Container | 核心容器,包含 Beans、Core、Context、SpEL,负责 Bean 的创建、配置和管理 |
| AOP | 提供面向切面编程支持,分离业务逻辑与系统服务,如日志、事务管理 |
| Data Access/Integration | 涵盖 JDBC、ORM、OXM、JMS、Transaction 等,简化数据访问与集成 |
| Web | 包含 Spring MVC 和 Spring WebFlux,分别用于 Servlet 栈和响应式 Web 开发 |
| Test | 支持 Junit、TestNG 等测试框架,方便 Spring 应用的单元测试和集成测试 |
2.Spring Boot(快速开发框架)
基于 Spring Framework,遵循 "约定优于配置" 理念,简化 Spring 应用的搭建与开发,可快速构建独立、生产级应用。
- 核心特性
自动配置 :根据依赖自动配置组件,如引入spring-boot-starter-web自动配置内嵌 Tomcat 与 Spring MVC。
起步依赖:预定义依赖组合,解决版本冲突,简化 Maven/Gradle 配置。
内嵌服务器:内置 Tomcat、Jetty 等,应用可打包为 JAR 文件直接运行。
生产就绪:通过 Actuator 提供健康检查、指标监控等功能。
- 典型场景:RESTful API 开发、微服务构建、企业级应用快速原型开发。
3.Spring Cloud(微服务工具集)
基于 Spring Boot,为分布式系统提供服务注册发现、配置管理、熔断降级、API 网关等微服务治理能力,助力云原生应用开发。
|----------------------------|--------------------------------------------------------------------------------|
| 核心组件 | 功能说明 |
| Spring Cloud Netflix | 包含 Eureka(服务注册发现)、Ribbon(负载均衡)、Hystrix(熔断降级,已停更,推荐 Resilience4j)、Zuul(API 网关)等 |
| Spring Cloud Config | 分布式配置中心,集中管理多环境配置 |
| Spring Cloud Gateway | 替代 Zuul 的 API 网关,支持动态路由、流量控制 |
| Spring Cloud Sleuth/Zipkin | 分布式链路追踪,用于排查微服务调用问题 |
| Spring Cloud Alibaba | 提供 Nacos、Sentinel 等组件,适配国内微服务生态 |
4.Spring Data(数据访问框架)
提供一致的数据访问编程模型,支持关系型数据库、NoSQL 数据库、MapReduce 等,简化数据层开发,减少模板代码。
- 核心特性
统一 Repository 接口,通过方法名自动生成查询语句。
支持 JPA、MongoDB、Redis、Elasticsearch 等多种数据存储。
提供事务管理、分页、排序等通用数据操作能力。
- 典型场景:企业级应用数据持久层开发、多数据源整合。
5.Spring Security(安全框架)
为 Spring 应用提供全面的身份认证和授权机制,保护应用免受安全威胁,可灵活集成 OAuth2、JWT 等安全技术。
- 核心功能
认证:支持表单登录、HTTP Basic 认证、LDAP、OAuth2 等多种认证方式。
授权:基于角色、权限的细粒度访问控制,支持方法级、URL 级权限控制。
安全防护:提供 CSRF 防护、会话管理、密码加密等安全特性。
- 典型场景:企业级应用权限管理、API 接口安全防护。
6.Spring AI(AI 集成框架)
Spring 生态新增项目,降低 Java 开发者集成 AI 能力的门槛,提供统一的 AI 模型调用接口,支持主流大模型,适配 Spring Boot 自动配置特性。
- 核心能力
模型抽象:统一ChatClient接口,屏蔽不同 AI 模型差异。
Prompt 工程:支持模板化构建 Prompt,适配不同模型需求。
流式响应:支持 AI 模型的流式输出,提升用户体验。
- 典型场景:智能客服、内容生成、数据分析等 AI 应用开发。
7. 其他重要产品
- Spring Session:提供用户会话管理 API,支持会话共享,适配分布式环境。
- Spring Integration:实现企业集成模式(EIP),通过轻量级消息传递整合不同系统。
- Spring Batch :用于批量数据处理,如数据清洗、ETL 等离线数据处理场景Spring。