Spring ecosystem¶
The Spring ecosystem comprises a comprehensive collection of projects designed to facilitate Java application development, ranging from core frameworks to specialized tools for security, data management, and cloud-native applications.^[600-developer-spring-spring.md]
Core Projects¶
The ecosystem is anchored by foundational frameworks that provide the basis for application architecture:
- Spring Boot: Designed to simplify the creation of stand-alone, production-grade Spring applications^[600-developer-spring-spring.md].
- Spring Framework: The underlying framework that provides the core features for dependency injection and MVC^[600-developer-spring-spring.md].
- Spring Data: A model for simplifying data access and repository implementations^[600-developer-spring-spring.md].
Cloud and Integration¶
For distributed systems and enterprise integration patterns, the ecosystem offers robust support for microservices and messaging:
- Spring Cloud: Tools for developers to quickly build common patterns in distributed systems^[600-developer-spring-spring.md].
- Spring Cloud Data Flow: A toolkit for building data integration and real-time data processing pipelines^[600-developer-spring-spring.md].
- [[Spring Integration]]: An extension for implementing enterprise integration patterns^[600-developer-spring-spring.md].
- Spring Batch: A lightweight framework for batch processing^[600-developer-spring-spring.md].
Web and API Development¶
Specific projects address the needs of modern web and API development, including RESTful services and GraphQL:
- Spring REST Docs: Tools for documenting RESTful services^[600-developer-spring-spring.md].
- [[Spring HATEOAS]]: Libraries for creating hypermedia-driven RESTful services^[600-developer-spring-spring.md].
- [[Spring for GraphQL]]: Support for building GraphQL servers^[600-developer-spring-spring.md].
Security and Infrastructure¶
The ecosystem includes projects focused on securing applications and managing infrastructure credentials:
- Spring Security: A powerful and customizable authentication and access-control framework^[600-developer-spring-spring.md].
- [[Spring Session]]: Management of user session information^[600-developer-spring-spring.md].
- [[Spring CredHub]]: Integration for Spring applications with CredHub^[600-developer-spring-spring.md].
- [[Spring Vault]]: Integration for HashiCorp Vault^[600-developer-spring-spring.md].
Messaging and Connectivity¶
Projects in this category handle messaging protocols and connectivity to various systems:
- [[Spring AMQP]]: Integration for AMQP messaging protocols^[600-developer-spring-spring.md].
- [[Spring for Apache Kafka]]: Integration for the Apache Kafka messaging system^[600-developer-spring-spring.md].
- [[Spring LDAP]]: A library for simplifying LDAP operations^[600-developer-spring-spring.md].
- [[Spring Web Services]]: Project for creating document-driven Web services^[600-developer-spring-spring.md].
Specialized Utilities¶
The ecosystem also contains specialized utilities for specific use cases such as shell interaction, state machines, and workflow:
- [[Spring Shell]]: Support for building interactive shell applications^[600-developer-spring-spring.md].
- [[Spring Statemachine]]: A framework for application state machines^[600-developer-spring-spring.md].
- [[Spring Web Flow]]: An extension for building navigational flows^[600-developer-spring-spring.md].
- [[Spring Flo]]: A visual technology for designing and viewing integration workflows^[600-developer-spring-spring.md].
Sources¶
^[600-developer-spring-spring.md]