Apache Camel框架之FTP路由
在做項目集成類型的項目的時候,經常會有這樣的需求,用戶或者別的系統將文件傳到一個FTP server,然后系統從FTP server取文件進行相應的處理.
本文簡單的介紹和示例一個用Camel實現這樣的需求:監聽FTPserver是否有文件,取到文件做相應處理傳到另外一個系統.
1,搭建一個FTP server,從http://sourceforge.net/projects/filezilla/files/ 下載FileZilla安裝,設置一個用戶yorker/123456.
可以參照這個網址 http://xbeta.info/filezilla-server.htm
2,在Camel里實現路由:
CamelContext context = new DefaultCamelContext(); context.addRoutes(new RouteBuilder() { public void configure() { from("ftp://localhost/inbox?username=yorker&password=123456").to( "file:d:/temp/outbox"); } }); context.start(); boolean loop = true; while (loop) { Thread.sleep(25000); } context.stop();
這里主要是為了示例Camel對FTP的支持,沒有加入processor的處理,downstream system也僅僅是用放到本地文件夾做示例.不過真正做項目的時候,在to里可以是別的類型,如JMS的queue,別的系統的FTB inbound文件夾,Web service等等.
如何在流程的中間加入processor處理可以參見 http://blog.csdn.net/kkdelta/article/details/7231640
本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!