现在要设计个简单的java应用程序,其主要工作就是
1、从目标数据库(Oracle)中获取最后的一条数据的ID,赋给MaxID
2、根据1的ID,从其他数据库(如MsSQL、MySQL)提取大于该ID的数据。不同数据库,数据结构不同。
3、将获取的数据写入Buffer中
4、另外的一只线程负责从Buffer中提取数据,提取后先设置MaxID为当前ID,然后将数据写如1中的Oracle,同时从Buffer中删除该条记录
图形结构如下:
|---------------------------------------------------|
读取当前ID值=》读取大于该ID的10条数据=》写入Buffer |
| |
从Buffer中读取值=》设置ID值=》写入目标数据库
过程中保证数据的准确性
我该怎么去设计他们之间的关系,以及采用什么设计模式比较好,便于扩展
1、从目标数据库(Oracle)中获取最后的一条数据的ID,赋给MaxID
2、根据1的ID,从其他数据库(如MsSQL、MySQL)提取大于该ID的数据。不同数据库,数据结构不同。
3、将获取的数据写入Buffer中
4、另外的一只线程负责从Buffer中提取数据,提取后先设置MaxID为当前ID,然后将数据写如1中的Oracle,同时从Buffer中删除该条记录
图形结构如下:
|---------------------------------------------------|
读取当前ID值=》读取大于该ID的10条数据=》写入Buffer |
| |
从Buffer中读取值=》设置ID值=》写入目标数据库
过程中保证数据的准确性
我该怎么去设计他们之间的关系,以及采用什么设计模式比较好,便于扩展