Java 基础教程

Java 面向对象

Java 高级教程

Java 笔记

Java Spring 生态


Spring 为开发者提供了一个一站式的轻量级应用开发平台,提供给开发者多种的技术选择。当然 Spring 还有许多值得注意的子项目,了解这些子项目,可以更好地使用 Spring 及理解其设计架构和思想。更多 Spring 项目,可查看 https://spring.io/projects

Spring 生态系统

Spring Framework(Core)

Spring 的核心项目,Spring 社区所有项目都是围绕此项目展开/发展而来;Spring Framework 提出了两个核心思想,依赖注入(DI)和面向切点编程(AOP),同时还有 MVC、JDBC、事务处理模块等实现。更详细的参照 Spring 教程

Spring Boot

提供了快速构建 Spring 应用,极大地简化了应用配置,提高开发效率,达到开箱即用。

关于 Spring Boot 的更多内容,参见 Spring Boot 教程

Spring Cloud

Spring Cloud 是一个基于 Spring Boot 的云服务开发工具,它不是架构,而是一种规则。

它主要是解决分布式系统问题,具体功能有配置管理,服务注册发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,领导选举,分布式会话,群集状态等。

关于 Spring Cloud 的更多内容,参见 Spring Cloud 教程

Spring Cloud Data Flow

用于构建数据集成和实时数据处理管道的工具包。管道由 Spring Boot 应用程序组成,使用 Spring Cloud Stream 或 Spring Cloud Task 微服务框架构建。这使得 Spring Cloud Data Flow 适用于各种数据处理用例,从导入/导出到事件流和预测分析。

Spring Data

用于简化数据库访问,支持 NoSQL 和关系数据库存储。其主要目标是使数据库的访问变得方便快捷。

Spring Batch

用来处理大量数据操作的一个框架,主要用来读取大量数据,然后进行一定处理后输出成指定的形式。

Spring Security

基于 Spring 的企业应用系统提供声明式的安全访问控制解决方式的安全框架,应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。

Spring AMQP

基于 Spring 框架的 AMQP 消息解决方案,提供模板化的发送和接收消息的抽象层,提供基于消息驱动的 POJO 的消息监听等,很大方便我们使用 RabbitMQ 程序的相关开发。

Spring LDAP

基于 Spring 开发的 LDAP 客户端开源工具,主要用来操用 LDAP,其实现方法有点类似 Spring JdbcTemplate。

Spring Session

提供了一套创建和管理 Servlet HttpSession 的方案,默认采用外置的 Redis 来存储 Session 数据,以此来解决 Session 共享的问题。

Spring Kafka

实际上是对 apache 的 kafka-client 进行了包装和开发,所以使用的时候一定注意,引入的 spring-kafka 里封装的 kafka-client 的版本要和服务器上的 kafka 服务器版本要对应,不然就会产生问题,比如消费失败。官网上贴出了 Spring Kafka 和 kafka-client 版本对应关系,https://spring.io/projects/spring-kafka