W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
基于Reactor的處理程序可以具有以下參數(shù)類型:
@Input
注釋的參數(shù),它支持Reactor Flux
類型。入站Flux的參數(shù)化遵循與處理單個(gè)消息時(shí)相同的規(guī)則:可以是整個(gè)Message
,可以是Message
有效負(fù)載的POJO或由于以下原因而產(chǎn)生的POJO:基于Message
內(nèi)容類型標(biāo)頭的轉(zhuǎn)換。提供了多個(gè)輸入。Output
注釋的參數(shù),它支持FluxSender
類型,該類型將方法生成的Flux
與輸出連接起來。一般而言,僅在該方法可以具有多個(gè)輸出時(shí)才建議將輸出指定為參數(shù)。基于Reactor的處理程序支持Flux
的返回類型。在這種情況下,必須用@Output
進(jìn)行注釋。當(dāng)單個(gè)輸出Flux
可用時(shí),建議使用該方法的返回值。
以下示例顯示了基于Reactor的Processor
:
@EnableBinding(Processor.class) @EnableAutoConfiguration public static class UppercaseTransformer { @StreamListener @Output(Processor.OUTPUT) public Flux<String> receive(@Input(Processor.INPUT) Flux<String> input) { return input.map(s -> s.toUpperCase()); } }
使用輸出參數(shù)的同一處理器看起來像以下示例:
@EnableBinding(Processor.class) @EnableAutoConfiguration public static class UppercaseTransformer { @StreamListener public void receive(@Input(Processor.INPUT) Flux<String> input, @Output(Processor.OUTPUT) FluxSender output) { output.send(input.map(s -> s.toUpperCase())); } }
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: