
Outline the essentials of getting started with Spring Integration, covering enterprise integration patterns, messaging concepts, and the building blocks of integration, endpoints and channels, through a practical use case.
Explore a consulting-firm scenario to illustrate using an integration framework for portfolio management. The system computes daily portfolio values and asynchronously delivers emails and Excel reports to subscribers and partners.
Estimate the effort of integrating a portfolio management app with diverse systems, accounting for boilerplate code, configuration tasks like connection pooling, and data format conversions between domain objects and messages.
Assess how integrating multiple systems drives higher development and maintenance estimates, increases code complexity, and heightens testing and risk of breaking changes.
Explore Spring Integration, a framework that connects diverse systems with adapters, handles data format conversion, and enables asynchronous processing in enterprise integration patterns, including web services, RSS, Twitter, and databases.
Spring Integration architecture and enterprise integration patents and patterns, linking application integration with event-driven messaging, channels, and parallel processing through splitters, aggregators, dispatcher, and resequencers.
Learn how Spring Integration uses messages with payloads and headers, how producers publish to channels, and how channels decouple producers and consumers for monitoring and filtering.
Explore how Spring Integration endpoints connect business logic to messaging channels, using transformers, filters, splitters, aggregators, routers, channel adapters to external systems, and wiretaps for logging.
Explore point-to-point vs publish-subscribe channels in Spring Integration, showing how single-consumer and multiple-subscriber patterns work, with pollers, queues, and thread pools.
Develop a portfolio management solution with Spring Integration by fetching stocks from database, splitting into individual stocks, calling external price services via gateways, aggregating results, and emailing portfolio value.
Design a portfolio management app with spring integration, setting up a relational database (users, stocks, portfolio, portfolio_stocks, stocks_daily) and wiring channels to handle trades and related processing.
Set up a Spring integration portfolio project, configure the application context and dependencies, and implement channels, wiretap, and a data source with a transaction manager.
Build integration components using Spring Integration: generate classes from schema with FCC plug-in, map and format output, call web services with get, extract stock symbols, aggregate responses, and store prices.
Explore building integration components in Spring Integration by calculating user portfolios with aggregate functions, joining stock data, and delivering daily portfolio emails through transformers and channels.
Inspect the database to verify data flow and resolve an initially empty state, then demonstrate that data arrives and messages are received as the solution works.
What this course is about
This course discusses what Integration frameworks are about and how can you leverage them. It then dives into the Spring Integration framework teaching you all the different aspects of the framework. You will finally build a solution to a problem using Spring Integration.
How this course is Structured
This course starts off telling you about integration frameworks. It tells you what an integration framework is and when it can be used. It also explains the features that integration frameworks like Spring Integration, MuleESB and Apache Camel can provide.
It then gives you an overview of Spring Integration, which is a top Integration framework provided by the Spring open source community for building integration solutions in Java and Spring.
It then dives into the building blocks of Spring Integration like Message Channels and Endpoints. Once you are acquainted with the basics, we will dive deeper into the framework. After that we build a solution to an Integration problem using Spring Integration from scratch.
The course comes with a demo project and a presentation. The way the lectures are delivered is using a technique which makes the course more engaging for students and enhances their participation.
What will you get out of this course