设计数据库轮询器Oracle线程

时间:2014-02-03 00:26:56

标签: java spring hibernate

1)我有一个Oracle数据库表" publishmessage",它有n个条目。

2)表" publishmessage"列#34;状态",表示已处理(P)或未处理(U)。

3)我应该编写一个JAVA轮询器,它将查找未处理的(U)条目和进程。

4)处理后,列#34;状态"应改为" P"。

For ex:
Before Processing:

publishmessage
messageid status
1           U
2           U


After Processing:

publishmessage
messageid status
1           P
2           P
3           U <-- new entry inserted to table "publishmessage", which will be picked in the next polling.

如何在JAVA中设计或编程。

1 个答案:

答案 0 :(得分:1)

我建议你看一下两件事

  1. Spring Data JDBC Extensions | link
  2. Spring Integration | link
  3. 第一个支持Oracle Advanced Queuing,它基本上允许您将数据库用作消息队列,并允许您使用普通JMS从Java访问它。

    第二个对JDBC驱动的入站网关提供开箱即用的支持,它允许您指定选择和更新查询,而您不必编写自己的轮询机制,只需配置它。

    在尝试推出自己的解决方案之前,我会研究这两种解决方案。