如何使用apache camel轮询数据库

时间:2017-09-01 11:52:43

标签: apache-camel

我想从我的数据库中不断轮询一个表并推送到Kafka。 我正在使用apache camel。

我的路线如下: -

from(timer:every 1 sec).
to(sql:select first 1000 * from myTable where id > myId).
to(updateMyId).
to(kafka:url).end()

问题是它在下一次迭代中没有采用更新的myId。路由是静态的,如果最初myId = 1,那么它将保持从1开始轮询。

如何动态更新myId?

1 个答案:

答案 0 :(得分:1)

尝试使用my.d属性,因为它会更新。

   from(timer:every 1 sec).
   to(sql:select first 1000 * from myTable where id >:#${property.myId}).
   to(updateMyId).
   to(kafka:url).end();

或者将以下逻辑移动到bean。

   to(sql:select first 1000 * from myTable where id >:#${property.myId}).
   to(updateMyId).