日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Batch @EnableBatchIntegration 注解

發(fā)布時間:2024/1/17 javascript 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Batch @EnableBatchIntegration 注解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

設(shè)置一個遠(yuǎn)程分塊任務(wù)需要定義一系列的 beans:

  • 一個連接工程來從消息中間件中獲得連接,消息中間件包括有(JMS,AMQP 和其他)
  • 一個?MessagingTemplate? 來從主向從發(fā)送消息,然后再次發(fā)送回來
  • 為 Spring 整合從消息中間件中獲得消息來創(chuàng)建一個輸入和輸出通道
  • 一個特殊的內(nèi)容寫(item writer)(ChunkMessageChannelItemWriter)在主機(jī)側(cè),這樣真多處理和寫入能夠知道如何發(fā)送分塊數(shù)據(jù)到工作機(jī)
  • 在工作機(jī)側(cè)的消息監(jiān)聽器(ChunkProcessorChunkHandler)來從主機(jī)上接受數(shù)據(jù)

這個在第一次看來的時候好像非常復(fù)雜,并且是一個艱巨的任務(wù)。在新發(fā)布的版本中我們介紹使用注解?@EnableBatchIntegration?來作為一個新的 API(RemoteChunkingMasterStepBuilder?和?RemoteChunkingWorkerBuilder) 來簡化配置。下面的示例顯示了如何使用新的注解和 API:

?

@Configuration @EnableBatchProcessing @EnableBatchIntegration public?class?RemoteChunkingAppConfig {@Autowiredprivate?RemoteChunkingMasterStepBuilderFactory masterStepBuilderFactory;@Autowiredprivate?RemoteChunkingWorkerBuilder workerBuilder;@Beanpublic?TaskletStep masterStep() {return?this.masterStepBuilderFactory.get("masterStep").chunk(100).reader(itemReader()).outputChannel(outgoingRequestsToWorkers()).inputChannel(incomingRepliesFromWorkers()).build();}@Beanpublic?IntegrationFlow worker() {return?this.workerBuilder.itemProcessor(itemProcessor()).itemWriter(itemWriter()).inputChannel(incomingRequestsFromMaster()).outputChannel(outgoingRepliesToMaster()).build();}// Middleware beans setup omitted }

?

這個新的注解和構(gòu)造器配置了?beans 中最難配置的部分?,F(xiàn)在你可以非常容易的配置主機(jī)和 Spring 整合到工作機(jī)。你可以找到遠(yuǎn)程分塊示例。用戶在這個示例中使用了?samples module?API,有關(guān)更多細(xì)節(jié)的內(nèi)容請參考?Spring Batch Integration?章節(jié)。

與遠(yuǎn)程快配置簡單化一樣,這個新的版本將會介紹新的 API 來簡化遠(yuǎn)程分區(qū)設(shè)置:RemotePartitioningMasterStepBuilder?和?RemotePartitioningWorkerStepBuilder。

這些可以自動重寫你的配置類,如果?@EnableBatchIntegration?出現(xiàn)了的話,具體的示例代碼請參考下面的示例:

@Configuration @EnableBatchProcessing @EnableBatchIntegration public class RemotePartitioningAppConfig {@Autowiredprivate RemotePartitioningMasterStepBuilderFactory masterStepBuilderFactory;@Autowiredprivate RemotePartitioningWorkerStepBuilderFactory workerStepBuilderFactory;@Beanpublic Step masterStep() {return this.masterStepBuilderFactory.get("masterStep").partitioner("workerStep", partitioner()).gridSize(10).outputChannel(outgoingRequestsToWorkers()).inputChannel(incomingRepliesFromWorkers()).build();}@Beanpublic Step workerStep() {return this.workerStepBuilderFactory.get("workerStep").inputChannel(incomingRequestsFromMaster()).outputChannel(outgoingRepliesToMaster()).chunk(100).reader(itemReader()).processor(itemProcessor()).writer(itemWriter()).build();}// Middleware beans setup omitted }

有關(guān)這個新注解的更多細(xì)節(jié),請參考?Spring Batch Integration?章節(jié)中的內(nèi)容。

https://www.cwiki.us/display/SpringBatchZH/@EnableBatchIntegration+Annotation

轉(zhuǎn)載于:https://my.oschina.net/u/2344080/blog/3003551

總結(jié)

以上是生活随笔為你收集整理的Spring Batch @EnableBatchIntegration 注解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。