chapter1-什么是Spring-Integration

一、初识Spring-Integration

1.1 什么是Spring-Integration

Spring Integration extends the Spring programming model into the messaging domain and builds upon Spring’s existing enterprise integration support to provide an even higher level of abstraction.
Spring Integration’s design is inspired by the recognition of a strong affinity between common patterns within Spring and the well known patterns described in Enterprise Integration Patterns, by Gregor Hohpe and Bobby Woolf (Addison Wesley, 2004).
官方并没有给出详细定义,摘录相关重要的内容,Spring集成扩展Spring编程模型到消息领域,并对Spring现存的企业集成提供了更高层次的抽象;Spring集成设计灵感来自于《企业集成模型》。

简要谈一下个人理解:企业级应用大部分都需要连接外部系统,比如外部API、数据库、邮箱等,这些数据是在外部系统读取或写入的,应用需要以某种方式处理这些数据,转换为自己的领域类。Spring集成就是实现通用的集成模式,引入消息,channel-filter模型,同时提供大量通用的端点模块,极大的方便企业应用进行开发和后期扩展。

1.2 基本名词

后面会详细介绍相关的内容,现只需要了解基本名称,有个大概影响,敲出个基本例子即可

1.2.1 Message

Message是它的基础构件和核心,所有的流程都围绕着Message运转,如图所示
在这里插入图片描述

Message,就是所说的消息体,用来承载传输的信息用的。Message分为两部分,header和payload。header是头部信息,用来存储传输的一些特性属性参数。payload是用来装载数据的,他可以携带的任何Object对象。

1.2.2 MessageChannel

消息管道,生产者生产一个消息到channel,消费者从channel消费一个消息,所以channel可以对消息组件解耦,并且提供一个方便的拦截功能和监控功能。
在这里插入图片描述

1.2.3 Message Endpoint

消息的终点,或者称为消息节点,在channel不能操作消息,只能在endpoint操作。
常见的Endpoint如下:

  • 过滤器(filter):基于某些断言,条件化地允许某些消息通过流
  • 转换器(transformer):改变消息的值或将消息payload从一种类型转换成另一种类型
  • 路由器(router):将消息路由至一个或多个通道,通常会基于消息的头信息进行路由
  • 切分器(splitter):将传入的消息切割成两个或更多的消息,然后将每个消息发送至不同的通道
  • 聚合器(aggregator):切分器的反向操作,将来自不同通道的多个消息合并成一个消息
  • 服务激活器(service activator):将消息传递给某个java方法来进行处理,并将返回值发布到输出通道上
  • 通道适配器(channel adapter):将通道连接到某些外部系统或传输方式,可以接受输入,也可以写出到外部系统
  • 网关(gateway):通过接口将数据传递到集成流中。

2 简单案例

xml案例如下:
https://gitee.com/ziyunmuxu/spring-integration-gitee/tree/master/chapter1-xml

java config案例如下
https://gitee.com/ziyunmuxu/spring-integration-gitee/tree/master/chapter1-java-config

3 参考

《Spring实战》,第五版,第9章 Spring集成
https://blog.csdn.net/qq_27808011/article/details/80108622
https://docs.spring.io/spring-integration/docs/5.4.3/reference/html/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值