需要从socket()读取数据,使用ibatis解析并写入数据库。这必须连续完成。不确定如何连续运行此过程。考虑使用驼峰循环。但看起来我们需要提到循环计数。
<route id="vts-data">
<from uri="timer://runOnce?repeatCount=1" />
<doTry>
<loop>
<to uri="bean:vtsProcessor?method=extractLocations" />
<log message="Details List is : ${body}" />
</loop>
<choice>
<when>
<simple>${body.size} == 0</simple>
<log message="List is null ${body}" />
</when>
<otherwise>
<to uri="mybatisPromis:insertLocationData?statementType=SelectList" />
<log message="Details List is : ${body}" />
<choice>
<when>
<simple>${body.size} == 0</simple>
<log message="Details List is null : ${body}" />
</when>
<otherwise>
<log message="Details List is : ${body}" />
</otherwise>
</choice>
</otherwise>
</choice>
<doCatch>
<exception>java.lang.Exception</exception>
</doCatch>
<doFinally>
<to uri="log:body" />
</doFinally>
</doTry>
</route>
我是骆驼的新手并融合。考虑使用工作线程连续运行过程但不运气。需要一些指针来做优化方法。
答案 0 :(得分:0)
驼峰路线提供了&#34;始终运行的过程&#34;。只需安排组件和EIP即可满足您的要求。
推荐的方法是从&#34;
如果不是#1,你应该看一下使用pollingConsumer模式..定时器运行..轮询套接字端点..然后坚持到ibatis