摘要:使用多线程加载多个xml文件到treeview控件
原代码:loadingxmlintvmtcode.zip
在很多情况下程序员需要采用多线程来开发应用程序,用户可以在前台操作数据或其他工作,在后台程序正在加载很大的一些文件,而这一过程不会影响到前台的用户。在这篇文章中,我来讲述一下怎样通过多个线程来加载多个文件。
在这个例子中我们将来研究这样一件事情,读取多个xml文件并通过treeview把它们显示出来。我们可以通过数据库来完......
摘要:
给c++程序员的一份礼物-常用工具集
给c++程序员的一份礼物-常用工具集
■...开发环境 ---->turbo c dos时代c语言开发的经典工具,目前适合两类人使用:c语言beginner(尤其是学生一族),具有怀旧情节的专业人士:) ---->visual c++ 6.0/7.0 稳定而强大的ide开发环境,具有丰富的调试功能,定制宏的功能也是其一大特色。microsoft......
异构数据库复制技术的研究与实现3 实施过程
【相关文章:
DataGrid中鼠标单击行改变颜色】
实施过程如图3所示。包括捕捉程序与实施程序两个部分。 【扩展阅读:
对《VB程序实现WindowsXP效果的】
【扩展信息:
IssuVision是怎样完成观察器模式】
图3 “基于sql重现的数据复制”实施过程
(1)捕捉程序
捕捉程序就是捕捉源数据库发生的更改的程序。
在建立复制环境之后,需要利用捕捉程序去捕捉源数据库发生的更改,且将更改临时存放于变更轨迹表中。
“基于sql重现法”捕捉数据的机制是依靠触发器来实现。具体捕捉步骤如图4所示,当源表发生修改、插入与删除操作时,触发器被启动,调用相应的存储过程,将源表发生的操作还原为sql语句(比如,源表为tb_employee,它所对应的目标表为tgtb_employee,向源表tb_employee中插入一条记录,如insert into tb_employee values(?,?,?,?),那么还原后的sql语句可能为insert into tgtb_employee values(?,?,?,?),这里用的是可能这个词,是因为目标表不一定包含源表的所有列,有可能只是其中的几列,如果只选择源表的几列数据,那么还原后的sql语句就只包含这几列数据),向该源表对应的变更轨迹表中插入变更时间与还原后的sql语句。
图4 捕捉过程
存储过程处理过程如图5所示。
图5 存储过程工作流程
figure 5 work flow of stored procedure
(2)实施程序
实施程序就是定期运行,将变更轨迹表中的数据实施到目标数据库中的程序。
因为基于异步的复制本身是需要一个外界的实施过程来进行数据分发的,所以,需要一个单独的服务器,也就是“实施服务器”来做这个工作。
实施程序负责分发数据,“基于sql重现法”数据复制技术的数据分发采用“拉式”模型,即复制过程由目标服务器启动,向源服务器请求变更数据。实施程序采用java语言开发,与源数据库、目标数据库之间通过jdbc连接。捕捉程序将源表发生的更改临时存放于变更轨迹表中,到复制时间实施程序通过jdbc连接源数据库,从变更轨迹表中读出源数据库的更改,然后通过jdbc连接目标数据库,将更改实施于目标数据库。
实施程序通常运行在目标服务器上,但它也可以运行在可以连接到源与目标服务器的网络上的任一服务器上。多个实施程序实例可以运行在相同或不同的服务器上。
实施程序通过全更新或差别更新拷贝从源表拷贝数据到目标表中。
(1)在初始化过程中,实施程序进行全更新拷贝,此时,实施程序执行以下任务:
1)删除目标表中的所有行
2)从源表中读取所有行
3)拷贝这些行到目标表中
(2)在进行差别更新拷贝时,实施程序只拷贝更改的数据到目标表中。此时实施程序执行以下任务,如图6所示:
图6 实施程序工作流程
figure 6 work flow of apply program
其中,(1)(2)(3)分别代表:
(1) 实施程序提取变更数据;...
下一页 摘要:上机环境:
windows2000 +oracle 9i
授课情况:全英(由于本人英语有限,并非全部理解)
课程安排:总共20次课,每课一般2个小时左右,附加若干次小测验,一次其中考试,一次期末考试。
考试范围:课上内容以及试验内容,难度比dba考试简单。
第一讲
第一节
1.老师介绍自己:eric,出生在日本的美国人,会说日语和英语(就是听不懂中文),有教授oralce认证资格,现年50岁。
2.eric的email:e......