簡體   English   中英

Spring Integration:Transformer:文件到對象

[英]Spring Integration : Transformer : file to Object

我是Spring Integration的新手,我試圖讀取一個文件並將其轉換為一個自定義對象,該對象必須發送到jms中,並包裝在jms.Message中。 所有這些都必須使用注釋來完成。

我正在使用以下方法從目錄中讀取文件。

@Bean
@InboundChannelAdapter(value = "filesChannel", poller = @Poller(fixedRate = "5000", maxMessagesPerPoll = "1"))
public MessageSource<File> fileReadingMessageSource() {
    FileReadingMessageSource source = new FileReadingMessageSource();
    source.setDirectory(new File(INBOUND_PATH));
    source.setAutoCreateDirectory(false);
    /*source.setFilter(new AcceptOnceFileListFilter());*/
    source.setFilter(new CompositeFileListFilter<File>(getFileFilters()));
    return source;
}

下一步是將文件內容轉換為發票對象(假定)。 我想知道什么是我的轉換器的傳入消息類型以及如何轉換它。 您能在這里幫忙嗎? 我不確定傳入的數據類型是什么,轉換后的對象類型應該是什么(應該包裝在Message中嗎?)

@Transformer(inputChannel = "filesChannel", outputChannel = "jmsOutBoundChannel")
public ? convertFiletoInvoice(? fileMessage){

    }

有效負載是一個Filejava.io.File )。

您可以讀取文件並輸出所需的任何內容( Stringbyte[]Invoice等)。

或者,您可以使用某些標准轉換器(例如FileToStringTransformerJsonToObjectTransformer等)。

JMS適配器會將對象轉換為TextMessageObjectMessage等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM