Spring Integration Message

Message是一个离散的信息片段,它可以在软件系统的不同组件中进行传递。在软件系统中,信息片段就是指程序中的数据,通常的表现就是声明为各种数据类型的变量,离散表示信息片段是独立的单元。每一个message都包含完整足够的信息,以满足消息消费的使用要求。

Message通常由元数据和真实数据组成,在spring integration中即message header和message payload。打个比方,Message就像一封信,message header就是信封上的信息(地址,收件人之类的信息),message payload就是信的内容。

Message通常分为三类:

Document Message,包含信息的

Command Message,指示消费者去执行某项动作的

Event Message,表示系统中发生了某项活动,提醒消息消费者是否做出响应

在Spring Integration中,消息由org.springframework.integration.Messge接口表示

public interface Message{

MessageHeaders getHeaders();

T getPayload();

}

通常情况下,我们不用自己实现该接口,因为不会直接操作消息对象。

在Spring Integration中,对该接口已经存在了一些实现类,一般情况下,不会直接操作这些类来创建Message。通常使用org.springframework.integration.support.MessageBuilder来生成一些message的对象。

我们可以直接使用要传输的数据创建Message对象如下,使用一个字符串“Hello,world!”来创建一个Message


MessageBuilder提供了一些方法来设置header如:


另外,MessageBuilder也可以直接通过一个已存在的Message对象来创建新的Message对象,设置Header,如:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容