This presentation takes the audience on Spring Framework‘s journey from dependency injection to providing support for Microservices.
* What is Dependency Injection?
The story arc begins with Dependency Injection (DI) and proceeds backwards in time from nowadays to the dark era of early Java EE when EJBs where counterproductive to use.
* Spring’s Evolution
With setting the scene and depicting the circumstances of Spring Framework’s genesis, we move on to Spring Boot.
After arriving at present day’s status of the Spring Ecosystem, we look into why teams – having such strong tools like Java, Spring (and other frameworks) – ended up with creating very large monolithic applications.
We discuss briefly what the Microservices Architecture is and why messaging as an abstract form of communication between individual services make developers and architects think about the very nature of that communication.
* Spring Integration
Enterprise Integration Patterns are briefly introduced as the basis of Spring Integration. After that Spring Integration is used to decouple three application components in a way that they don’t know about each other, but they’re exchanging messages instead.
* Spring Cloud Stream
In the last part Spring Cloud Stream is introduced to the audience as a combination of Spring Integration and Spring Boot. We evolve our sample application further into a set of message-driven Microservices.