Introduction to Spring Integration Project

background

The design of Spring Integration is inspired by the close connection between the general pattern in Spring and the well-known enterprise integration pattern. The enterprise integration model is described in the book "Enterprise Integration Model" published by Gregor Hohpe and Bobby Woolf in Addison Wesley Press in 2004. Developers who have read this book should be able to directly adapt to the concepts and terminology of Spring Integration. Spring Integration supports lightweight messaging in Spring-based applications and supports integration with external systems through declarative adapters. These adapters provide a higher level of abstraction than Spring's support for remote processing, messaging, and scheduling. The main goal of Spring Integration is to provide a simple model for building enterprise integration solutions while maintaining the separation of concerns that is essential for generating maintainable and testable code.
Using the Spring framework encourages developers to write code using interfaces and use dependency injection (DI) to provide plain old Java objects (POJOs) with dependencies required to perform tasks. Spring Integration takes this concept a step further, where pojos are connected together using a message passing paradigm, and a single component may not be aware of other components in the application. Such applications are built by assembling fine-grained reusable components to form higher-level functions. With careful design, these streams can be modularized and reused at higher levels.
In addition to connecting fine-grained components together, Spring Integration also provides a wide selection of channel adapters and gateways to communicate with external systems. Channel adapters are used for one-way integration (sending or receiving); gateways are used for request/response scenarios (inbound or outbound). For a complete list of adapters and gateways, see the reference documentation.
The Spring Cloud Stream project is built on Spring Integration, where Spring Integration is used as the engine for message-driven microservices.
Features of Spring Integration

  • Implement most enterprise integration patterns
  • Endpoint
  • Channel (point-to-point and publish/subscribe)
  • Aggregator
  • Filter
  • Transformer
  • Control bus
  • Integration with external systems
  • ReST / HTTP
  • FTP / SFTP
  • Twitter
  • Web services (SOAP and ReST)
  • TCP / UDP
  • JMS
  • RabbitMQ
  • e-mail
  • The framework has extensive JMX support
  • Expose framework components as mbeans
  • Adapter to get properties from mbean, call operations, send/receive notifications

Spring Integration example

Service configuration

Introduction to Spring Integration Project
Converter
Introduction to Spring Integration Project
test class
Introduction to Spring Integration Project

to sum up

The Spring Integration project can be found on github https://github.com/spring-projects/spring-integration, which contains many sub-modules
Introduction to Spring Integration Project

Guess you like

Origin blog.51cto.com/15015181/2556228