Pro Spring Integration - Lui_ Dr. Mark.pdf

(15860 KB) Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
THE EXPERT’S VOICE ® IN SPRING
INTRODUCTION
Pro
Spring
Integration
Build enterprise integration solutions
using Spring Integration
Dr. Mark Lui, Mario Gray, Andy H. Chan,
and Josh Long
xxii
844550194.028.png 844550194.029.png 844550194.030.png 844550194.031.png 844550194.001.png 844550194.002.png 844550194.003.png 844550194.004.png 844550194.005.png 844550194.006.png 844550194.007.png 844550194.008.png 844550194.009.png 844550194.010.png 844550194.011.png 844550194.012.png 844550194.013.png
 
For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.
844550194.014.png 844550194.015.png 844550194.016.png 844550194.017.png 844550194.018.png 844550194.019.png 844550194.020.png 844550194.021.png
Contents at a Glance
Contents ..................................................................................................................... v
About the Authors ................................................................................................... xvi
About the Technical Reviewers .............................................................................. xvii
Acknowledgments ................................................................................................. xviii
Introduction ............................................................................................................. xix
Chapter 1: Enterprise Application Integration Fundamentals ................................. 1
Chapter 2: Exploring the Alternatives ................................................................... 15
Chapter 3: Introduction to Core Spring Framework .............................................. 61
Chapter 4: Introduction to Enterprise Spring ...................................................... 103
Chapter 5: Introduction to Spring Integration..................................................... 149
Chapter 6: Channels ............................................................................................ 175
Chapter 7: Transformations and Enrichment ...................................................... 217
Chapter 8: Message Flow: Routing and Filtering ................................................ 245
Chapter 9: Endpoints and Adapters..................................................................... 291
Chapter 10: Monitoring and Management .......................................................... 329
Chapter 11: Talking to the Metal......................................................................... 361
Chapter 12: Enterprise Messaging with JMS and AMQP .................................... 397
Chapter 13: Social Messaging............................................................................. 451
Chapter 14: Web Services ................................................................................... 477
Chapter 15: Extending Spring Integration........................................................... 499
Chapter 16: Scaling Your Spring Integration Application ................................... 529
Chapter 17: Spring Integration and Spring Batch ............................................... 561
Chapter 18: Spring Integration and Your Web Application ................................. 591
Index ....................................................................................................................... 615
iv
844550194.022.png 844550194.023.png 844550194.024.png 844550194.025.png 844550194.026.png
 
Introduction
The majority of the open source Java frameworks have focused on supporting database-backed web
sites. Developers have leveraged these frameworks to create highly scalable and performant vertical
applications using projects such as Spring and Hibernate. Recently, a number of frameworks have been
developed with the purpose of solving the horizontal problem of integrating data and services between
disparate applications across the enterprise. Spring Integration is one of these solutions.
Enterprise integration is an architectural approach for integrating disparate services and data in
software. Enterprise integration seeks to simplify and automate business processes without requiring
comprehensive changes to the existing applications and data structures. Spring Integration is an
extension of Spring’s Plain Old Java Object (POJO) programming model to support the standard
integration patterns while building on the Spring Framework’s existing support for integration with
systems and users.
The Spring Framework is the most widely used framework in organizations today. Spring
Integration works in terms of the fundamental idioms of integration, including messages, channels, and
endpoints. It enables messaging within Spring-based applications and integrates with external systems
via Spring Integration’s adapter framework. The adapter framework provides a higher level of
abstraction over Spring’s existing support for remote method invocation, messaging, scheduling, and
much more. Developers already familiar with the Spring Framework will find Spring Integration easy to
pick up, since it uses the same development model and idioms.
This book will cover the vast world of enterprise application integration, as well as the application of
the Spring Integration framework toward solving integration problems. The book can be summed up as
the following:
An introduction to the concepts of enterprise application integration.
A reference on building event-driven applications using Spring Integration.
A guide to solving common integration problems using Spring Integration.
Who This Book Is For
This book is for any developer looking for a more natural way to build event-driven applications using
familiar Spring idioms and techniques. The book is also for architects seeking to better their applications
and increase productivity in their developers. You should have a basic understanding of the Java
language. A familiarity with the Spring Framework and messaging are useful, but not required, as we
provide an introduction to those concepts.
xix
844550194.027.png
INTRODUCTION
How This Book Is Structured
To give you a quick idea of what this book covers, here’s a brief chapter-by-chapter overview:
Chapter 1 provides an introduction to enterprise application integration—an architectural
approach for integrating disparate services and data in software.
Chapter 2 takes a look as some of the alternative open source technologies for enterprise
integration.
Chapter 3 introduces the Spring Framework and provides a glance at some of the major
modules leveraged by Spring Integration.
Chapter 4 introduces several of the enterprise APIs supported by the core Spring Framework,
including those for JDBC, object-relationship management, transactions, and remoting.
Chapter 5 introduces the basic Spring Integration components and how they extend the
Spring Framework into the world of messaging and event-driven architectures.
Chapter 6 introduces the concept of a message channel and how the Spring Integration
framework simplifies the development of message channels in an integration
implementation.
Chapter 7 covers transformations, which allow the message payload to be modified to the
format and structure required by the downstream endpoint. It also covers enrichment, which
allows for augmenting and modifying the message header values as required for supporting
downstream message handling and endpoint requirements.
Chapter 8 covers the different components available for controlling message flow in Spring
Integration, and how to use a workflow engine with Spring Integration.
Chapter 9 focuses on endpoints that connect to the message channels, application code,
external applications, and services.
Chapter 10 introduces the support for management and monitoring provided by Spring
Integration and other available open source systems.
Chapter 11 discusses the Spring Integration channel adapters used to communicate with
files, sockets, streams, file servers, and databases.
Chapter 12 focuses on enterprise messaging using transports such as Java Message Service
(JMS) and the Advanced Message Queuing Protocol (AMQP).
Chapter 13 discusses the Spring Integration adapters that support integrating with e-mail,
XMPP (Jabber, GTalk, Facebook Chat, etc.), news feeds (RSS, ATOM, etc.), and Twitter.
Chapter 14 covers how Spring Integration provides both client and server support for web
services and how to integrate web services with the Spring Integration messaging framework.
Chapter 15 explores the support offered in the core Spring Integration framework to help you
build your own adapters.
Chapter 16 focuses on how to increase performance by scaling out the hardware and how
Spring Integration applications can take advantage of concurrency.
xx
Zgłoś jeśli naruszono regulamin