Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
FAULT DATA PROCESSING DEVICE AND METHOD
Document Type and Number:
WIPO Patent Application WO/2014/094455
Kind Code:
A1
Abstract:
The present invention discloses a fault data processing device and a fault data processing method. The method comprises the following steps of: sending a downloading request for requesting fault data to be adjacent to latest continuous data to a server; judging whether an adjacent fault interval is filled up with the fault data returned by the server or not; inserting the returned fault data to a database if the adjacent fault interval is filled up with the fault data; setting a display mark of the returned fault data to be valid, and setting a display mark of downloaded data between the adjacent fault interval and the next fault interval to be valid, and deleting the adjacent fault interval from the database; inserting the returned fault interval to the database if the adjacent fault interval is not filled up with the fault data, setting the display mark of the returned fault data to be valid, and modifying the boundary of the adjacent fault interval. According to the technical solution of the present invention, the fault data can be obtained from the server and filled up to the corresponding fault interval according to the recorded fault interval set, so that the latest continuous data is always displayed to a user.

Inventors:
ZHANG JIONGXUAN (CN)
FAN GUOFENG (CN)
Application Number:
PCT/CN2013/082653
Publication Date:
June 26, 2014
Filing Date:
August 30, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BEIJING QIHOO TECH CO LTD (CN)
QIZHI SOFTWARE BEIJING CO LTD (CN)
International Classes:
H04L69/40; G06F17/30
Foreign References:
CN103077186A2013-05-01
CN103036992A2013-04-10
CN101727505A2010-06-09
CN1627290A2005-06-15
US20120023506A12012-01-26
US20120198234A12012-08-02
Attorney, Agent or Firm:
BEIJING LONGAN LAW FIRM (CN)
北京市隆安律师事务所 (CN)
Download PDF:
Claims:
权 利 要 求

1、 一种断层数据处理装置, 该装置包括: 数据库单元、 显示单元、 断层数据下载单 元和第一数据库维护单元;

所述数据库单元, 适于保存数据、 数据的显示标记以及由与断层数据对应的断层区 间组成的断层区间集合, 其中, 最新连续数据的显示标记为有效, 其他数据的显示标记 为无效;

所述显示单元, 适于显示所述数据库单元中的显示标记为有效的数据;

所述断层数据下载单元, 适于向服务器发送请求紧邻数据库单元中最新连续数据的 一定数量断层数据的下载请求, 接收服务器返回的断层数据;

所述第一数据库维护单元, 适于判断所述返回的断层数据是否填满紧邻最新连续数 据的断层区间; 如果填满, 将所述返回的断层数据插入到所述数据库单元中, 设置所述 返回的断层数据的显示标记为有效, 并将所述紧邻最新连续数据的断层区间及所述紧邻 最新连续数据的断层区间的下一个断层区间之间的已下载数据的显示标记置为有效, 以 及从数据库单元中删除所述紧邻最新连续数据的断层区间; 如果未填满, 将所述返回的 断层数据插入到所述数据库单元中, 设置所述返回的断层数据的显示标记为有效, 并将 所述紧邻最新连续数据的断层区间的表示该断层区间中最新一条数据的标识, 修改为所 述返回的断层数据中的最旧一条数据的标识。

2、 如权利要求 1所述的装置, 其中,

所述断层数据下载单元向服务器发送的下载请求包括: 最新连续数据中的最旧一条 阅读数据的标识、 请求下载的断层数据条数, 以及紧邻最新连续数据的断层区间所对应 的断层数据中的最旧一条阅读数据的标识;

所述第一数据库维护单元, 进一步适于在所述返回的断层数据的条数大于 0且小于 所述请求下载的断层数据的条数时判断为填满, 在所述返回的断层数据的条数大于或等 于所述请求下载的断层数据的条数时判断为未填满。

3、 如权利要求 2所述的装置, 其中, 该装置进一步包括第一断层区间维护单元; 所述第一断层区间维护单元, 适于遍历数据库单元中的断层区间集合, 找到对应的 断层数据中的最新一条阅读数据的标识与最新连续数据中的最旧一条阅读数据的标识紧 邻的断层区间, 该断层区间为紧邻最新连续数据的断层区间。

4、 如权利要求 1所述的装置, 其中,

所述数据库单元保存的断层区间集合中的所述断层区间为一个包含两个元素的数 组, 该数组中的第一个元素为该断层区间所对应的断层数据中的最新一条数据的标识, 第二个元素为该断层区间所对应的断层数据中的最旧一条数据的标识。

5、 如权利要求 4所述的装置, 其中,

所述数据库单元保存的所述断层区间集合是由 JAVA类库中的数组表实现的。

6、 如权利要求 1所述的装置, 其中, 该装置进一步包括显示单元,

所述显示单元, 适于在所述断层数据下载单元接收到的服务器返回的断层数据的条 数为 0时, 向用户提示服务器上没有更旧的数据。

7、 如权利要求 1至 6中任一项所述的装置, 其特征在于, 该装置进一步包括: 新数 据下载单元和第二数据库维护单元;

所述新数据下载单元, 适于向服务器发送下载新数据的请求, 接收服务器返回的新 数据;

所述第二数据库维护单元, 适于判断所述返回的新数据是否能与数据库单元中的已 有数据衔接, 如果衔接, 将所述返回的新数据保存到数据库单元中, 并将所述返回的数 据的显示标记置为有效, 如果不衔接, 将数据库单元中已有的显示标记为有效的数据的 显示标记都置为无效, 然后将所述返回的新数据保存到数据库单元中, 并将所述返回的 新数据的显示标记置为有效。

8、 如权利要求 7所述的装置, 其特征在于,

所述新数据下载单元向所述服务器发送的所述下载新数据的请求中包含: 请求下载 的新数据条数和已下载到数据库单元中的最新一条数据的标识;

所述第二数据库维护单元, 进一步适于在所述返回的新数据的条数小于所述请求下 载的新数据条数时判断为衔接 , 在所述返回的新数据的条数大于或等于所述请求下载的 新数据条数时判断为不衔接。

9、 如权利要求 7所述的装置, 其中, 该装置进一步包括第二断层区间维护单元; 所述第二断层区间维护单元, 适于用所述返回的新数据中的最旧一条数据的标识和 所述已下载到库中数据库单元中的最新一条数据的标识组成一个表示断层区间的数组, 并该数组保存到数据库单元中的表示断层区间集合的数组集合中。

10、 如权利要求 7所述的装置, 其中,

所述提示单元, 进一步适于在所述新数据下载单元接收到的服务器返回的新数据的 条数为 0时, 向用户提示数据库单元中的最新数据即为服务器上的最新数据。

11、 一种断层数据处理方法, 该方法包括:

向服务器发送请求紧邻数据库中最新连续数据的一定数量断层数据的下载请求, 接 收服务器返回的断层数据; 其中, 所述数据库中保存有已下载的数据、 数据的显示标记 以及由与断层数据对应的断层区间组成的断层区间集合, 其中最新连续数据的显示标记 为有效, 其他数据的显示标记为无效, 且显示标记为有效的数据能够被显示;

判断所述返回的断层数据是否填满紧邻最新连续数据的断层区间;

如果填满, 将所述返回的断层数据插入到所述数据库中, 设置所述返回的断层数据 的显示标记为有效, 并将所述紧邻最新连续数据的断层区间及所述紧邻最新连续数据的 断层区间的下一个断层区间之间的已下载数据的显示标记置为有效, 以及从数据库中删 除所述紧邻最新连续数据的断层区间;

如果未填满, 将所述返回的断层数据插入到所述数据库中, 设置所述返回的断层数 据的显示标记为有效, 并将所述紧邻最新连续数据的断层区间的表示该断层区间中最新 一条数据的标识, 修改为所述返回的断层数据中的最旧一条数据的标识。

12、 如权利要求 11所述的方法, 其中, 所述下载请求包括: 最新连续数据中的最旧一条阅读数据的标识、 请求下载的断层 数据条数, 以及紧邻最新连续数据的断层区间所对应的断层数据中的最旧一条阅读数据 的标识;

所述判断所述返回的断层数据是否填满紧邻最新连续数据的断层区间包括: 在所述 返回的断层数据的条数大于 0且小于所述请求下载的断层数据的条数时判断为填满, 在 所述返回的断层数据的条数大于或等于所述请求下载的断层数据的条数时判断为未填 满。

13、 如权利要求 12所述的方法, 其中, 在向服务器发送下载请求之前该方法进一步 包括:

遍历数据库中的断层区间集合, 找到对应的断层数据中的最新一条阅读数据的标识 与最新连续数据中的最旧一条阅读数据的标识紧邻的断层区间, 该断层区间为紧邻最新 连续数据的断层区间。

14、 如权利要求 11所述的方法, 其中,

所述断层区间为一个包含两个元素的数组, 该数组中的第一个元素为该断层区间所 对应的断层数据中的最新一条数据的标识, 第二个元素为该断层区间所对应的断层数据 中的最旧一条数据的标识。

15、 如权利要求 14所述的方法, 其中, 该方法进一步包括:

釆用 JAVA类库中的数组表来实现所述断层区间集合。

16、 如权利要求 11所述的方法, 其中, 该方法进一步包括:

如果接收到的服务器返回的断层数据的条数为 0 ,向用户提示服务器上没有更旧的数 据。

17、 如权利要求 11至 16中任一项所述的方法, 其中, 该方法进一步包括: 向服务器发送下载新数据的请求, 接收服务器返回的新数据;

判断所述返回的新数据是否能与数据库中的已有数据衔接;

如果衔接, 将所述返回的新数据保存到数据库中, 并将所述返回的新数据的显示标 记置为有效;

如果不衔接, 将数据库中已有的显示标记为有效的数据的显示标记都置为无效, 然 后将所述返回的新数据保存到数据库中, 并将所述返回的新数据的显示标记置为有效。

18、 如权利要求 17所述的方法, 其中, 所述下载新数据的请求中包括: 请求下载的 新数据条数, 和已下载到数据库中的最新一条数据的标识;

所述判断所述返回的新数据是否能与数据库中的已有数据衔接包括: 在所述返回的 新数据的条数小于所述请求下载的新数据条数时判断为衔接 , 在所述返回的新数据的条 数大于或等于所述请求下载的新数据条数时判断为不衔接。

19、 如权利要求 17所述的方法, 其中, 该方法进一步包括:

如果不衔接, 用所述返回的新数据中的最旧一条数据的标识和所述已下载到数据库 中的最新一条数据的标识组成一个表示断层区间的数组, 并该数组保存到表示断层区间 集合的数组集合中。 20、 如权利要求 17所述的方法, 其中, 该方法进一步包括:

如果接收到的服务器返回的新数据的条数为 0 ,向用户提示数据库中的最新数据即为 服务器上的最新数据。

21、 一种数据下载装置, 该装置包括: 数据库单元、 显示单元、 新数据下载单元和 数据库维护单元;

所述新数据下载单元, 适于向服务器发送下载新数据的请求, 接收服务器返回的数 据;

所述数据库维护单元, 适于判断所述返回的数据是否能与数据库单元中的已有数据 衔接, 如果衔接, 将所述返回的数据保存到数据库单元中, 并将所述返回的数据的显示 标记置为有效, 如果不衔接, 将数据库单元中已有的显示标记为有效的数据的显示标记 都置为无效, 然后将所述返回的数据保存到数据库单元中, 并将所述返回的数据的显示 标 i己置为有效;

所述数据库单元, 适于保存数据以及数据的显示标记;

所述显示单元, 适于显示所述数据库单元中的显示标记为有效的数据。

11、 如权利要求 21所述的装置, 其特征在于,

所述新数据下载单元向所述服务器发送的所述下载新数据的请求中包含: 请求下载 的数据条数和已下载到数据库单元中的最新一条数据的标识;

所述数据库维护单元, 进一步适于在所述返回的数据的条数小于所述请求下载的数 据的条数时判断为衔接, 在所述返回的数据的条数大于或等于所述请求下载的数据的条 数时判断为不衔接。

23、 如权利要求 21所述的装置, 其中, 该装置进一步包括断层区间维护单元; 所述断层区间维护单元, 适于在所述返回的数据与数据库单元中的已有数据不衔接 时,将与不衔接的断层数据对应的断层区间保存在数据库单元中维护的断层区间集合中。

24、 如权利要求 23所述的装置, 其中,

所述断层区间维护单元, 进一步适于用所述返回的数据中的最旧一条数据的标识和 所述已下载到数据库单元中的最新一条数据的标识组成一个表示断层区间的数组, 并该 数组保存到数据库单元中的表示断层区间集合的数组集合中。

25、 如权利要求 24所述的装置, 其中,

所述数据库单元中的所述断层区间集合是由 JAVA类库中的数组表实现的。

26、 如权利要求 21所述的装置, 其中, 该装置进一步包括: 提示单元;

所述提示单元,适于在服务器返回的数据的条数为 0 , 向用户提示数据库中的最新数 据即为服务器上的最新数据。

27、 一种数据下载方法, 该方法包括:

向服务器发送下载新数据的请求, 接收服务器返回的数据;

判断所述返回的数据是否能与数据库中的已有数据衔接; 如果衔接, 将所述返回的数据保存到数据库中, 并将所述返回的数据的显示标记置 为有效;

如果不衔接, 将数据库中已有的显示标记为有效的数据的显示标记都置为无效, 然 后将所述返回的数据保存到数据库中, 并将所述返回的数据的显示标记置为有效; 其中, 只有显示标记为有效的数据能够被显示。

28、 如权利要求 27所述的方法, 其中, 所述下载新数据的请求中包括: 请求下载的 数据条数, 和已下载到数据库中的最新一条数据的标识;

所述判断所述返回的数据是否能与数据库中的已有数据衔接包括: 在所述返回的数 据的条数小于所述请求下载的数据条数时判断为衔接, 在所述返回的数据的条数大于或 等于所述请求下载的数据条数时判断为不衔接。

29、 如权利要求 27所述的方法, 其中, 该方法进一步包括:

如果不衔接 , 还将与不衔接的断层数据对应的断层区间保存到所维护的断层区间集 合中。

30、 如权利要求 29所述的方法, 其中, 所述将与不衔接的断层数据对应的断层区间 保存到所维护的断层区间集合中包括:

用所述返回的数据中的最旧一条数据的标识和所述已下载到数据库中的最新一条数 据的标识组成一个表示断层区间的数组, 并将该数组保存到表示断层区间集合的数组集 合中。

31、 如权利要求 30所述的方法, 其中, 该方法进一步包括:

釆用 JAVA类库中的数组表来实现所述断层区间集合。

32、 如权利要求 27所述的方法, 其中, 该方法进一步包括:

如果接收到的服务器返回的数据的条数为 0 ,向用户提示数据库中的最新数据即为服 务器上的最新数据。

33、 一种计算机程序, 包括计算机可读代码, 当所述计算机可读代码在计算设备上 运行时, 导致所述计算设备执行根据权利要求 11-20、 27-32中的任一个所述的方法。

34、 一种计算机可读介质, 其中存储了如权利要求 33所述的计算机程序。

Description:
一种断层数据处理装置和方法

技术领域

本发明涉及网络通信技术领域, 具体涉及一种断层数据处理装置和方法。 背景技术

随着智能终端设备的普及, 阅读客户端 (以下在本申请中筒称为 "客户端,, )越来 越多的被应用于智能终端设备上。 但是其主要功能部分 __数据的存储以及断层数据的 处理, 一直以来都是较为核心、 技术难度较大、 却又优化不够的地方。 而这又是构成客 户端用户体验中, 一个非常重要的组成部分。

客户端的阅读数据包括文章、 图片、 视频、 "微博" 等。 在使用客户端的过程中, 有一种最为普遍的场景是: 用户先在某一时间段(如中午午休时)通过客 户端下载阅读 数据, 一般而言, 客户端会请求到约 20条阅读数据, 将其保存到数据库中以便显示。 当 用户看了一段时间后,退出客户端,继续自己 的事情。 而后在另一时间段(如傍晚六时), 用户再次进入客户端下载新的阅读数据, 一般而言, 出于对流量、 传输速度和体验的考 虑, 客户端不会将从上次下载过的数据 (如之前提到的中午午休时)一直到现在的阅 数据都请求过来, 这期间服务器端有可能已有了数百条阅读数据 , 因此客户端仅是为用 户请求到约最新的 20条阅读数据。 那么, 在刚刚请求的 20条阅读数据和之前用户请求 的 20条阅读(如午休时)的中间, 形成了一些还没有被下载到客户端的阅读数据 。 这些 夹在最新的阅读数据和已有阅读数据的中间的 "空心,,部分称之为 "断层数据" 。

现有技术中的一种做法是在下载完新的阅读数 据后, 不考虑中间是否有断层数据, 直接将新下载的阅读数据插入到已有阅读数据 之前, 并且在显示时全部显示出来。 这使 得用户无法获知所显示的数据之间是否有断层 数据, 更无法获取断层数据。 发明内容

鉴于上述问题, 提出了本发明以便提供一种克服上述问题或者 至少部分地解决上述 问题的一种断层数据处理装置和方法。

根据本发明的一个方面, 提供了一种断层数据处理装置, 该装置包括: 数据库单元、 显示单元、 断层数据下载单元和第一数据库维护单元;

所述数据库单元, 适于保存数据、 数据的显示标记以及由与断层数据对应的断层 区 间组成的断层区间集合, 其中, 最新连续数据的显示标记为有效, 其他数据的显示标记 为无效;

所述显示单元, 适于显示所述数据库单元中的显示标记为有效 的数据;

所述断层数据下载单元, 适于向服务器发送请求紧邻数据库单元中最新 连续数据的 一定数量断层数据的下载请求, 接收服务器返回的断层数据;

所述第一数据库维护单元, 适于判断所述返回的断层数据是否填满紧邻最 新连续数 据的断层区间; 如果填满, 将所述返回的断层数据插入到所述数据库单元 中, 设置所述 返回的断层数据的显示标记为有效, 并将所述紧邻最新连续数据的断层区间及所述 紧邻 最新连续数据的断层区间的下一个断层区间之 间的已下载数据的显示标记置为有效, 以 及从数据库单元中删除所述紧邻最新连续数据 的断层区间; 如果未填满, 将所述返回的 断层数据插入到所述数据库单元中, 设置所述返回的断层数据的显示标记为有效, 并将 所述紧邻最新连续数据的断层区间的表示该断 层区间中最新一条数据的标识, 修改为所 述返回的断层数据中的最旧一条数据的标识。

据本发明的另一个方面, 提供了一种断层数据处理方法, 该方法包括:

向服务器发送请求紧邻数据库中最新连续数据 的一定数量断层数据的下载请求, 接 收服务器返回的断层数据; 其中, 所述数据库中保存有已下载的数据、 数据的显示标记 以及由与断层数据对应的断层区间组成的断层 区间集合, 其中最新连续数据的显示标记 为有效, 其他数据的显示标记为无效, 且显示标记为有效的数据能够被显示;

判断所述返回的断层数据是否填满紧邻最新连 续数据的断层区间;

如果填满, 将所述返回的断层数据插入到所述数据库中, 设置所述返回的断层数据 的显示标记为有效, 并将所述紧邻最新连续数据的断层区间及所述 紧邻最新连续数据的 断层区间的下一个断层区间之间的已下载数据 的显示标记置为有效, 以及从数据库中删 除所述紧邻最新连续数据的断层区间;

如果未填满, 将所述返回的断层数据插入到所述数据库中, 设置所述返回的断层数 据的显示标记为有效, 并将所述紧邻最新连续数据的断层区间的表示 该断层区间中最新 一条数据的标识, 修改为所述返回的断层数据中的最旧一条数据 的标识。

依据本发明的又一个方面, 提供了一种数据下载方法, 该方法包括:

向服务器发送下载新数据的请求, 接收服务器返回的数据;

判断所述返回的数据是否能与数据库中的已有 数据衔接;

如果衔接, 将所述返回的数据保存到数据库中, 并将所述返回的数据的显示标记置 为有效;

如果不衔接, 将数据库中已有的显示标记为有效的数据的显 示标记都置为无效, 然 后将所述返回的数据保存到数据库中, 并将所述返回的数据的显示标记置为有效; 其中, 只有显示标记为有效的数据能够被显示。

依据本发明的再一个方面, 提供了一种数据下载装置, 该装置包括: 数据库单元、 显示单元、 新数据下载单元和数据库维护单元;

所述新数据下载单元, 适于向服务器发送下载新数据的请求, 接收服务器返回的数 据;

所述数据库维护单元, 适于判断所述返回的数据是否能与数据库单元 中的已有数据 衔接, 如果衔接, 将所述返回的数据保存到数据库单元中, 并将所述返回的数据的显示 标记置为有效, 如果不衔接, 将数据库单元中已有的显示标记为有效的数据 的显示标记 都置为无效, 然后将所述返回的数据保存到数据库单元中, 并将所述返回的数据的显示 标 i己置为有效;

所述数据库单元, 适于保存数据以及数据的显示标记;

所述显示单元, 适于显示所述数据库单元中的显示标记为有效 的数据。 本发明有益效果为:

根据本发明的这种断层数据处理方案中, 可以根据所记录的断层区间集合, 从服务 器获取断层数据并填补到对应的断层区间中, 并且向用户显示的一直都是最新连续的数 据, 由此解决了用户无法获知所显示的数据中是否 存在断层数据, 以及无法获得断层数 据的问题。

上述说明仅是本发明技术方案的概述, 为了能够更清楚了解本发明的技术手段, 而 可依照说明书的内容予以实施, 并且为了让本发明的上述和其它目的、 特征和优点能够 更明显易懂, 以下特举本发明的具体实施方式。 附图说明

通过阅读下文优选实施方式的详细描述, 各种其他的优点和益处对于本领域普通技 术人员将变得清楚明了。 附图仅用于示出优选实施方式的目的, 而并不认为是对本发明 的限制。 而且在整个附图中, 用相同的参考符号表示相同的部件。 在附图中:

图 1示出了根据本发明一个实施例的一种数据下 方法的流程图;

图 2示出了根据本发明一个实施例的数据下载方 的流程图;

图 3示出了根据本发明一个实施例的数据下载过 中客户端的数据变化示意图; 图 4示出了根据本发明一个实施例的一种断层数 处理方法的流程图;

图 5示出了根据本发明一个实施例的断层数据处 方法的流程图;

图 6 示出了根据本发明的一个实施例的一次下载的 断层数据能填满断层区间的示意 图;

图 7 示出了根据本发明的一个实施例的一次下载的 断层数据不能填满断层区间的示 意图;

图 8示出了根据本发明一个实施例的一种断层数 处理装置的结构图;

图 9示出了根据本发明一个实施例的断层数据处 装置的结构图;

图 10示意性地示出了用于执行根据本发明的方法 服务器的框图; 以及

图 11示意性地示出了用于保持或者携带实现根据 发明的方法的程序代码的存储单 元。 具体实施方式

在本发明的方案中, 在每次下载新数据的过程中维护数据的显示标 记并记录断层区 间, 之后在需要下载断层数据时, 根据所记录的断层区间请求相应的断层数据, 并维护 数据的显示标记, 使得一直显示的都是最新连续的数据。 以下分为两大部分对发明的技 术方案进行说明: 请求新数据和请求断层数据。

-请求新数据

图 1示出了根据本发明一个实施例的一种新数据 载方法的流程图。 如图 1所示, 该方法包括:

步骤 S110, 向服务器发送下载新数据的请求, 接收服务器返回的新数据。

在本发明的一个实施例中, 该客户端向服务器发送的下载新数据的请求中 包括: 请 求下载的新数据条数, 和已下载到数据库中的最新一条数据的标识。 这样, 服务器端认 为客户端所请求的数据是从服务器端当前最新 的一条数据到所述请求中包含的数据标识 为止的数据, 且请求的数据条数为所述请求中的包含的条数 。 这里, "新" 和 "旧" 比 较的是数据的产生时间, "新" 为产生时间在后的数据, "旧" 为产生时间在先的数据。

步骤 S 120 , 判断服务器返回的新数据是否能与数据库中的 已有数据衔接, 如果是执 行步骤 S 1 30 , 如果否执行步骤 S 140。

在本发明的一个实施例中, 在服务器回的新数据的条数小于请求下载的新 数据条数 时判断为衔接, 在服务器返回的新数据的条数大于或等于请求 下载的新数据条数时判断 为不衔接。 这是因为服务器端以客户端发送的下载新数据 的请求中包含的请求下载的数 据条数, 和已下载到数据库中的最新一条数据的标识为 返回数据的依据的结果。

以数据的标识依照其产生时间的先后顺序依次 递增为例: 客户端已下载到数据库中 的最新一条数据的标识为 1000 , 当前请求 20条数据。如果服务器端接收到客户端的请求 时, 服务器端的最新一条数据的标识已到 1050 , 则服务器会向客户端返回标识为 103Γ1050的 20条数据,客户端会判断为不衔接。如果服务 端接收到客户端的请求时, 服务器端的最新一条数据的标识已到 1015 , 则服务器会向客户端返回标识为 100Γ1015 的 15条数据 , 客户端会判断为衔接。

步骤 S 1 30 , 将服务器返回的新数据保存到数据库中, 并将该返回的新数据的显示标 记置为有效。 执行步骤 S 150。

步骤 S 140 , 将数据库中已有的显示标记为有效的数据的显 示标记都置为无效, 然后 将服务器返回的新数据保存到数据库中, 并将服务器返回的新数据的显示标记置为有效 。 执行步骤 S 150。

步骤 S 150 , 只显示数据库中的显示标记为有效的数据。

图 1 所示的技术方案中, 在每次请求到新数据后都判断新数据和已有的 数据是否衔 接, 当不衔接时则说明数据产生了断层, 通过设置和维护数据的显示标记, 并在显示时 只显示最新的连续的数据, 这样用户看到数据是连续的数据, 其中不存在断层数据, 由 此解决了用户不能获知所显示的数据中是否存 在断层数据的问题。

图 1所示的方法还可以在步骤 S 120中判断为不衔接时,进一步将与不衔接的断 层数 据对应的断层区间保存到所维护的断层区间集 合中。 具体为: 用服务器返回的新数据中 的最旧一条数据的标识和已下载到数据库中的 最新一条数据的标识组成一个表示断层区 间的数组, 并将该数组保存到表示断层区间集合的数组集 合中。 例如, 以前述的客户端 已下载到数据库中的最新一条数据的标识为 1000 , 当前请求 20条数据,服务器端接收到 客户端的请求时, 服务器端的最新一条数据的标识已到 1050 , 服务器向客户端返回标识 为 103Γ1050 的 20条数据为例, 该不衔接的断层数据对应的断层区间为数组为 [ 1031 , 1000]。 断层区间 [ 1031 , 1000]的两个端点数据 1000和 1031不包括在断层数据内, 即对 应的断层数据为 1001—1030。

为使本发明的技术方案更加清楚, 以下对本发明的技术方案进一步详细说明。

图 1示出了根据本发明一个实施例的数据下载方 的流程图。 图 3示出了根据本发 明一个实施例的数据下载过程中客户端的数据 变化示意图。 以下结合图 3对图 2所示的 方法进行说明, 如图 2所示, 客户端请求一次新数据的流程包括:

步骤 S202 , 客户端向服务器发送下载新数据的请求。 在本发明的一个实施例中, 该客户端向服务器发送的下载新数据的请求中 包括: 请 求下载的新数据条数 , 和已下载到数据库中的最新一条数据的标识。

首先, 客户端需确定要 "请求下载的新数据条数" , 如一般情况下为 20条。 此外, 客户端还需要获取已有数据中(即已下载到客 户端数据库中的)的最新一条数据的标识, 如图 3中的线条 310。 将上述 "请求下载的数据条数" 和 "已有数据中的最新一条数据的 标识" 存为一个变量备用。 然后, 客户端将 "请求下载的数据条数" 和 "已有数据中的 最新一条数据的标识" 拼接成一个 URL , 向服务器请求下载更新的数据。

步骤 S204 , 客户端接收服务器返回的新数据。

在这里, 服务器会根据 "已有数据中的最新一条数据的标识" 来判断应返回多少条 数据, 以及返回哪些数据。 通常情况下, "已有数据中的最新一条数据的标识,, 在服务 器上的表现形式为 "请求到该数据标识为止" (如图 3中线条 310 ) , 也即, 获取数据的 范围的区间是 "正无穷到已有数据中的最新一条数据的标识" , 公式为: (∞, 已有数据 中的最新一条数据的标识),其范围内不包括 该已有数据中的最新一条数据的标识所指定 的数据。 同时, "请求下载的数据条数,, 也将作为一种条件限制, 即服务器端 "返回的 数据条数,, 要小于或者等于该限制。 最终, 服务器端的返回数据的条件为: 一、 返回数 据的条数要小于或者等于 "请求下载的数据条数" ; 二、 获取数据的范围是(∞, 已有数 据中的最新一条数据的标识), 两条件成 "与" 的关系。

步骤 S206 , 客户端判断服务器返回的新数据条数是否小于 或等于 0 , 是则执行步骤 S208 , 否则执行步骤 S210。

步骤 S208 , 如果服务器返回的新数据条数小于或者等于 0 , 则表示客户端中最新的 数据标识已经是服务器端的最新数据标识了, 即客户端的数据已是最新, 服务器端没有 更新的数据, 客户端向用户提示数据库中的最新数据即为服 务器上的最新数据, 无需再 请求, 传输过程终止。

步骤 S210 , 如果服务器返回的新数据条数大于 0 , 则表示服务器端已有比客户端的 最新数据还要新的数据, 因此继续判断服务器返回的新数据是否能与数 据库中的已有数 据衔接, 具体为判断服务器返回的新数据条数是否小于 所请求下载的新数据条数, 是则 执行步骤 S 212 , 否则执行步骤 S 214。

步骤 S212 , 如果服务器返回的新数据条数小于所请求下载 的新数据条数, 则表示服 务器返回的数据与客户端本地的数据能够衔接 , 客户端将服务器返回的新数据保存到数 据库中, 并将服务器此次返回的新数据的显示标记置为 有效。 例如, 在本发明的一个实 施例中, 用一条 INSERT的 SQL语句即可实现将服务器返回的数据插入到数 据库中。 结束 流程。

步骤 S214 , 如果服务器返回的新数据条数大于或等于所请 求下载的新数据条数, 则 表示服务器返回的新数据与客户端本地的数据 不能够衔接, 存在断层数据, 则客户端将 于该断层数据对应的断层区间保存到所维护的 断层区间集合中。

在本发明的一个实施例中,客户端首先将服务 器返回的数据中的最旧一条数据的标识 记录下来, 并保存为一个变量, 在本实施例中, 可称为 "服务器返回数据中的最旧一条数 据的标识,,,如图 3中线条 320所示。然后,客户端将"已有数据中的最新 条数据的标识", 如图 3中的线条 310所示, 保存为一个变量, 备用。 再然后, 从数据库中取出 "断层的区间 集合" (如图 3中, 有两处断层区间分别标记为 331和 332 , 则这两个合起来就是 "断层的 区间集合" )。 "断层区间集合" 主要用来记录每个断层的范围区间, 这些断层都还未下 载到客户端中, 但又要在客户端需要时能够向服务器请求。 而取出 "断层区间集合" 的目 的是要在该集合中添加新的断层区间。

在本发明的一个实施例中,釆用 JAVA类库中的数组表 ArrayLi s t来实现断层区间集合。 而具体到 Andro id客户端中的做法为, 通过 SQLi te语句将断层区间集合取出。 由于取出来 的是 Bytes类型 (也可用字符串描述断层区间) , 客户端会通过反序列化技术

( de-ser ia l ize ) , 也即 Andro id的 Object lnputS t ream类的 readObject方法, 将该记录转 化为一个 ArrayLi s t对象。 而 ArrayLi s t当中, 每一项都由 Integer的一维数组构成, 每个 数组有两个元素,分别用来表示该断层区间的 两个边界。客户端要做的是将先前提到的 "服 务器返回的数据中的最旧一条数据的标识,, 和 "已有数据中的最新一条数据的标识,,作为 断层区间的两个边界, 分别填入新的 In t eger的一维数组中, 然后将其添加到 Ar r ayL i s t 对象中, 最后, 再将其序列化( ser ia l ize ) 为一个 Bytes对象, 也即 Andro id的

ObjectOutputS t ream的 toByteArray O , 最终, 再将其存回数据库当中。 至此, 断层区间 集合将多了一个新的断层区间, 图 3中的 333为该新增加的断层区间。

步骤 S216 , 将数据库中已有的显示标记为有效的数据的显 示标记都置为无效。

即将客户端中已有的数据(如图 3中的数据段 311 )显示标记的值从 1 (显示)改为 0 (隐藏) , 以确保断层 333之前的已有数据段 311不会显示在客户端的显示界面中。 具 体做法为: 通过一条 SQL语句, 将所有已有数据的显示标记的值从 1 (显示)改为 0 (隐 藏) o

步骤 S218 , 然后将服务器返回的新数据保存到数据库中, 并将服务器返回的新数据 的显示标记置为有效。

客户端会将之前由服务器端返回的那些数据 333都插入到数据库中, 并将其显示标记 的值置为 1 (显示) 。 至此, 整个传输过程结束。

由上述可见, 本发明的技术方案中, 通过设置和维护显示标记, 只显示最新的连续 的数据, 这样用户看到数据是连续的数据, 此外还记录了断层区间, 这样当用户想请求 断层数据时, 可以根据记录的断层区间请求相应的断层数据 。 二请求断层数据

图 4示出了根据本发明一个实施例的一种断层数 处理方法的流程图。如图 4所示, 该方法包括:

步骤 S410, 向服务器发送请求紧邻数据库中最新连续数据 的一定数量断层数据的下 载请求, 接收服务器返回的断层数据。 其中, 根据前述的请求新数据的过程, 数据库中 保存有已下载的数据、 数据的显示标记以及由与断层数据对应的断层 区间组成的断层区 间集合, 其中最新连续数据的显示标记为有效, 其他数据的显示标记为无效, 且显示标 记为有效的数据能够被显示。

在本发明的一个实施例中, 客户端向服务器发送的断层数据下载请求包括 : 数据库 中的最新连续数据中的最旧一条阅读数据的标 识、 请求下载的断层数据条数, 以及紧邻 最新连续数据的断层区间所对应的断层数据中 的最旧一条阅读数据的标识。 具体来说, 遍历数据库中的断层区间集合, 找到对应的断层数据中的最新一条阅读数据的 标识与最 新连续数据中的最旧一条阅读数据的标识紧邻 的断层区间, 该断层区间为紧邻最新连续 数据的断层区间。 其中, 断层区间为一个包含两个元素的数组, 该数组中的第一个元素 为该断层区间所对应的断层数据中的最新一条 数据的标识, 第二个元素为该断层区间所 对应的断层数据中的最旧一条数据的标识。

步骤 S420, 判断服务器返回的断层数据是否填满紧邻最新 连续数据的断层区间, 是 则执行步骤 S 430 , 否则执行步骤 S 440。

在本发明的一个实施例中, 在服务器返回的断层数据的条数大于 0且小于所述请求 下载的断层数据的条数时判断为填满, 在服务器返回的断层数据的条数大于或等于所 述 请求下载的断层数据的条数时判断为未填满。

步骤 S430, 将服务器返回的断层数据插入到所述数据库中 , 设置服务器返回的断层 数据的显示标记为有效, 并将该紧邻最新连续数据的断层区间及所述紧 邻最新连续数据 的断层区间的下一个断层区间之间的已下载数 据的显示标记置为有效, 以及从数据库中 删除所述紧邻最新连续数据的断层区间。

步骤 S440, 将服务器返回的断层数据插入到所述数据库中 , 设置服务器返回的断层 数据的显示标记为有效, 并将所述紧邻最新连续数据的断层区间的表示 该断层区间中最 新一条数据的标识, 修改为所述返回的断层数据中的最旧一条数据 的标识。

这样, 通过图 4 所示的方法, 可以根据所记录的断层区间获取断层数据。 重复图 4 所示的方法, 可以从最新连续的数据开始依次地获取断层数 据, 填补断层区间, 直至将 所有的断层区间填补完。 触发一次断层数据下载的流程的条件一般为: 用户看到 "最新连续的数据中的最旧 一条数据,, (可以想象为,在没有网络环境的情况下,用 户可以一直阅览这些连续的数据, 直到触及到最旧的一条, 之后或许开始出现断层, 或许没有更旧的数据)。 这时, 为了保 证旧的数据能够下载并让用户看到, 需要向服务器请求下载断层数据。 具体过程如图 5所 示。

图 5示出了根据本发明一个实施例的断层数据处 方法的流程图。 图 6示出了根据 本发明的一个实施例的一次下载的断层数据能 填满断层区间的示意图。 图 7示出了才艮据 本发明的一个实施例的一次下载的断层数据不 能填满断层区间的示意图。 以下结合图 6 和图 7对图 5所示的断层数据处理方法进行说明。 如图 5所示, 客户端请求一次断层数 据的流程包括:

步骤 S502 , 客户端向服务器发送下载断层数据的请求。

在本发明的一个实施例中, 客户端向服务器发送的断层数据下载请求包括 : 数据库 中的最新连续数据中的最旧一条阅读数据的标 识、 请求下载的断层数据条数, 以及紧邻 最新连续数据的断层区间所对应的断层数据中 的最旧一条阅读数据的标识。

例如参见图 6 : 首先,客户端需要知道数据库中的最新连续数 据 644中的最旧一条阅 读数据的标识,如图 6中的线条 620 ,将其存为一个变量备用。具体地可以通过 SQL语句, 获取所有的显示标记为 1 (显示)且表示号码为最小的那条数据的标识 同时, 客户端还 需要了解一共要请求的断层数据条数, 在这里, 假设和获取新数据一样, 一次性获取不 超过 20条数据, 然后, 将 "请求下载的断层数据条数" 保存为一个变量备用。 紧接着, 客户端需要获取在 "数据库中的最新连续数据中的最旧一条数据 标识" 的之后, 紧接 着的 "断层区间" , 以下筒称为 "紧邻最新连续数据的断层区间" , 如图 6 中的断层区 间 655 ,也即线条 620到线条 610之间的部分。仍以 Andro id系统为例,首先通过 SQLi te 语句将断层集合取出,将其反序列化( de-ser ia l ize ) ,再将该记录转化为一个 ArrayLi s t 对象。 从 ArrayLi s t 中的第一个元素 (最后添力口的元素) , 该元素为一个 Integer的一 维数组, 表示一个 "断层区间" 。 然后, 读取该 "断层区间" 的两个边界值, 它们分别 位于该数组的第一个元素和第二个元素。 这里仍以 "文章标识以递减顺序从新到旧" 的 排列为例, 第一个元素为该断层区间所对应的断层数据中 的最新一条数据的标识, 第二 个元素为该断层区间所对应的断层数据中的最 旧一条数据的标识。 这样, 客户端便获得 了请求断层数据时的必要参数: "最新连续数据中的最旧一条阅读数据的标识" 、 "请 求下载的断层数据条数,, , 以及 "紧邻最新连续数据的断层区间所对应的断层 据中的 最旧一条阅读数据的标识" , 将以上三个参数拼接成一个 URL, 向服务器发起请求, 等待 返回结果。

步骤 S504 , 客户端接收服务器返回的断层数据。

服务器会根据 "最新连续数据中的最旧一条阅读数据的标识" 和 "紧邻最新连续数 据的断层区间所对应的断层数据中的最旧一条 阅读数据的标识" , 共同判断应返回多少 条数据, 以及返回哪些数据。 通常情况下, "最新连续数据中的最旧一条阅读数据的标 识,, 在服务器上的表现形式为 "自该条数据标识开始,, , 而 "紧邻最新连续数据的断层 区间所对应的断层数据中的最旧一条阅读数据 的标识" 在服务器上的表现形式为 "请求 到该台数数据标识为止" , 也即获取数据的范围的区间是图 6中的断层区间 655 , 且范围 内不包括该起止标识所指定的数据。 同时, "请求下载的断层数据条数,, 也将作为一种 条件限制, 需要服务器端 "返回的断层数据条数,, 要小于或者等于该限制。 最终, 服务 器端的返回断层数据的依据为: 一、 返回的断层数据条数要小于或者等于请求下载 的断 层数据条数; 二、 获取数据的范围是从 "最新连续数据中的最旧一条阅读数据的标识" 开始到 "紧邻最新连续数据的断层区间所对应的断层 据中的最旧一条阅读数据的标 识" , 两者成 "与" 的关系。 下面将服务器端返回的断层数据标识为 666。

步骤 S506 ,判断服务器返回的断层数据条数是否小于或 于 0 ,是则执行步骤 S508 , 否则执行步骤 S510。

步骤 S508 , 客户端向用户提示服务器上没有更旧的数据, 结束流程。

步骤 S510, 判断服务器返回的断层数据条数是否小于所请 求的断层数据条数, 是则 执行步骤 S 512 , 否则执行步骤 S 518。

本步骤中是判断服务器当前返回的断层数据是 否填满紧邻最新连续数据的断层区间。 具体为: 如果服务器返回的断层数据小于所请求下载的 断层数据条数, 则表示断层可被填 满, 如图 6所示, 服务器返回的断层数据 666能够填满断层区间 655 , 断层区间可以直接从 断层区间集合删除。反之, 如果服务器返回的断层数据大于或等于所请求 下载的断层数据 条数, 则表示断层不可被填满, 如图 7所示, 服务器返回的断层数据 666不能够填满断层区 间 655 , 需要缩小该断层区间的范围。

步骤 S512 , 将服务器返回的断层数据插入到数据库中, 并设置服务器返回的断层数 据的显示标记为有效。

参见图 6 , 将服务器返回的断层数据 666插入到数据库中, 正好能够填满断层区间 655。 并将插入的断层数据 666的显示标记设置为有效(设置为 1 , 显示) , 即新下载的 数据需要显示。

步骤 S514 , 将该紧邻最新连续数据的断层区间及该紧邻最 新连续数据的断层区间的 下一个断层区间之间的已下载数据的显示标记 置为有效。

在图 6中, 断层区间 655和其下一个断层区间 677之间的已下载数据为数据块 633 , 即将数据块 633 中数据的显示标记置为有效, 这样数据块 633、 新下载的断层数据 666 和原连续数据 644组成了新连续数据 , 并且都被显示。

具体来说: 客户端需读取之前保存的 "紧邻最新连续数据的断层区间所对应的断层 据中的最旧一条阅读数据的标识,,和 "断层区间所在 ArrayLi s t的位置,, (以下筒称为 "断 层位置" ) , 后者主要用来在列表中准确的定位到那个断层 区间上。 然后, 客户端通过 ArrayLi s t. get (断层位置 +1) , 来获取在该当前断层区间 655之后的下一个断层区间 677。 然后, 获取断层区间 677对应的断层数据中的最新一条数据的标识, 并将其保存为一个变 量, 备用。 最后, 通过 SQL语句, 客户端将 "断层区间 655对应的断层数据中的最旧一条数 据的标识" 和 "下一个区间 677对应的断层数据中的最新一条数据的标识" 之间的数据的 显示标记值, 从 0 (隐藏)修改为 1 (显示) 。 这样, 断层区间将被填满, 断层区间之前已 有的文章将会衔接在断层数据后面, 直到下一个断层为止。

步骤 S516 , 从数据库中删除该紧邻最新连续数据的断层区 间。 结束流程。

具体来说, 在 "ArrayLi s t对象" 中, 删除已经被填充完的断层区间。

步骤 S518 , 将服务器返回的断层数据插入到所述数据库中 , 并设置服务器返回的断 层数据的显示标记为有效。

参见图 7 , 将服务器返回的断层数据 666插入到数据库中, 还不能够填满断层区间 655。 将插入的断层数据 666的显示标记设置为有效(设置为 1 , 显示) , 即新下载的数 据需要显示。 此时的最新的连续数据由新下载的断层数据 666和原数据 644组成。

步骤 S520, 将该紧邻最新连续数据的断层区间的表示该断 层区间中最新一条数据的 标识, 修改为所述返回的断层数据中的最旧一条数据 的标识。 结束流程。

参见图 7 , 在下载断层数据之前, 最新连续数据为 644 , 紧邻最新连续数据的断层区间 为 655。 在下载断层数据之后, 最新连续数据为 644和 666的组合, 紧邻最新连续数据的断 层区间为 688。 这样可显示的范围扩大了, 紧邻的断层区间缩小了。

具体来说, 在修改完紧邻的断层区间的边界值后, 将该断层区间放回 ArrayLi s t。 在 Andro id操作系统中, 由于釆用的是 Java编程语言, 而緩存的数组实为指针类型,也即 "紧 邻的断层区间,, 对象和 ArrayLi s t内的对象是关联的, 故不需要做其它的操作。 而在其它 语言中, 则可能还需要将其放回到 ArrayLi s t , 并需要覆盖原来的对象。 至此, 传输过程 结束。

重复图 5所示的流程可以依次获取断层数据, 直到所有的断层区间都被填满。

图 8示出了才艮据本发明一个实施例的一种断层 据处理装置的结构图。如图 8所示, 该断层数据处理装置 800包括: 数据库单元 801、显示单元 802、 断层数据下载单元 803、 第一数据库维护单元 804、 第一断层区间维护单元 805和提示单元 806。

数据库单元 801 ,适于保存数据、数据的显示标记以及由与断 数据对应的断层区间 组成的断层区间集合, 其中, 最新连续数据的显示标记为有效, 其他数据的显示标记为 无效。

显示单元 802 , 适于显示数据库单元 801中的显示标记为有效的数据。

断层数据下载单元 803 ,适于向服务器发送请求紧邻数据库单元 801中最新连续数据 的一定数量断层数据的下载请求, 接收服务器返回的断层数据。

第一数据库维护单元 804 ,适于判断服务器返回的断层数据是否填满紧 最新连续数 据的断层区间; 如果填满, 将服务器返回的断层数据插入到数据库单元 801 中, 设置服 务器返回的断层数据的显示标记为有效, 并将该紧邻最新连续数据的断层区间及所述紧 邻最新连续数据的断层区间的下一个断层区间 之间的已下载数据的显示标记置为有效, 以及从数据库单元 801 中删除该紧邻最新连续数据的断层区间; 如果未填满, 将服务器 返回的断层数据插入到所述数据库单元 801 中, 设置服务器返回的断层数据的显示标记 为有效, 并将该紧邻最新连续数据的断层区间的表示该 断层区间中最新一条数据的标识, 修改为所述返回的断层数据中的最旧一条数据 的标识。

在本发明的一个实施例中, 断层数据下载单元 803向服务器发送的下载请求包括: 最新连续数据中的最旧一条阅读数据的标识、 请求下载的断层数据条数, 以及紧邻最新 连续数据的断层区间所对应的断层数据中的最 旧一条阅读数据的标识。 第一数据库维护 单元 804 ,进一步适于在服务器返回的断层数据的条数 于 0且小于所述请求下载的断层 数据的条数时判断为填满, 在服务器返回的断层数据的条数大于或等于所 述请求下载的 断层数据的条数时判断为未填满。

第一断层区间维护单元 805 ,适于遍历数据库单元 801中的断层区间集合,找到对应 的断层数据中的最新一条阅读数据的标识与最 新连续数据中的最旧一条阅读数据的标识 紧邻的断层区间, 该断层区间为紧邻最新连续数据的断层区间。

在本发明的一个实施例中, 数据库单元 801保存的断层区间集合中的断层区间为一 个包含两个元素的数组, 该数组中的第一个元素为该断层区间所对应的 断层数据中的最 新一条数据的标识, 第二个元素为该断层区间所对应的断层数据中 的最旧一条数据的标 识。

在本发明的一个实施例中,数据库单元 801保存的断层区间集合是由 JAVA类库中的 数组表实现的。

显示单元 806 ,适于在断层数据下载单元 803接收到的服务器返回的断层数据的条数 为 0时, 向用户提示服务器上没有更旧的数据。 图 9示出了才艮据本发明一个实施例的断层数据 理装置的结构图。 如图 9所示, 该 断层数据处理装置 900包括: 数据库单元 901、 显示单元 902、 断层数据下载单元 903、 第一数据库维护单元 904、 第一断层区间维护单元 905和提示单元 906。 此外, 还包括: 新数据下载单元 907、 第二数据库维护单元 908和第二断层区间维护单元 909。

新数据下载单元 907 ,适于向服务器发送下载新数据的请求,接收 务器返回的新数 据。 在本发明的一个实施例中, 新数据下载单元 907 向服务器发送的下载新数据的请求 中包括: 请求下载的新数据条数, 和已下载到数据库中的最新一条数据的标识。

第二数据库维护单元 908 , 适于判断服务器返回的新数据是否能与数据库 单元 901 中的已有数据衔接, 如果衔接, 将服务器返回的新数据保存到数据库单元 901 中, 并将 服务器返回的数据的显示标记置为有效, 如果不衔接, 将数据库单元 901 中已有的显示 标记为有效的数据的显示标记都置为无效, 然后将服务器返回的新数据保存到数据库单 元 901中, 并将服务器返回的该新数据的显示标记置为有 效。

数据库单元 901 ,适于保存数据、数据的显示标记以及由与断 数据对应的断层区间 组成的断层区间集合, 其中, 最新连续数据的显示标记为有效, 其他数据的显示标记为 无效。

显示单元 902 , 适于显示数据库单元 901中的显示标记为有效的数据。

在本发明的一个实施例中, 新数据下载单元 907 向服务器发送的下载新数据的请求 中包含: 请求下载的数据条数和已下载到数据库单元 901 中的最新一条数据的标识。 服 务器端的返回数据的条件为:一、返回数据数 要小于或者等于 "请求下载的新数据条数"; 二、 获取数据的范围是(∞, 已下载到数据库单元 901 中的最新一条数据的标识), 两条 件成 "与" 的关系。 则第二数据库维护单元 908 , 适于在服务器返回的新数据的条数小于 请求下载的新数据条数时判断为衔接, 在服务器返回的新数据的条数大于或等于所述 请 求下载的新数据条数时判断为不衔接。

第二断层区间维护单元 909 ,适于在服务器返回的新数据与数据库单元 901中的已有 数据不衔接时, 将与不衔接的断层数据对应的断层区间保存在 数据库单元 901 中维护的 断层区间集合中。 具体来说, 第二断层区间维护单元 909用服务器返回的数据中的最旧 一条数据的标识和已下载到数据库单元 901 中的最新一条数据的标识组成一个表示断层 区间的数组, 并该数组保存到数据库单元 901中的表示断层区间集合的数组集合中。

在本发明的一个实施例中,数据库单元 901中的断层区间集合是由 JAVA类库中的数 组表实现的。

提示单元 906 ,适于在服务器返回给新数据下载单元 907的新数据的条数为 0时, 向 用户提示数据库中的最新数据即为服务器上的 最新数据。

断层数据下载单元 903 ,适于向服务器发送请求紧邻数据库单元 901中最新连续数据 的一定数量断层数据的下载请求, 接收服务器返回的断层数据。

第一数据库维护单元 904 ,适于判断服务器返回的断层数据是否填满紧 最新连续数 据的断层区间; 如果填满, 将服务器返回的断层数据插入到数据库单元 901 中, 设置服 务器返回的断层数据的显示标记为有效, 并将该紧邻最新连续数据的断层区间及所述紧 邻最新连续数据的断层区间的下一个断层区间 之间的已下载数据的显示标记置为有效, 以及从数据库单元 901 中删除该紧邻最新连续数据的断层区间; 如果未填满, 将服务器 返回的断层数据插入到所述数据库单元 901 中, 设置服务器返回的断层数据的显示标记 为有效, 并将该紧邻最新连续数据的断层区间的表示该 断层区间中最新一条数据的标识, 修改为所述返回的断层数据中的最旧一条数据 的标识。

在本发明的一个实施例中, 断层数据下载单元 903向服务器发送的下载请求包括: 最新连续数据中的最旧一条阅读数据的标识、 请求下载的断层数据条数, 以及紧邻最新 连续数据的断层区间所对应的断层数据中的最 旧一条阅读数据的标识。 第一数据库维护 单元 904 ,进一步适于在服务器返回的断层数据的条数 于 0且小于所述请求下载的断层 数据的条数时判断为填满, 在服务器返回的断层数据的条数大于或等于所 述请求下载的 断层数据的条数时判断为未填满。

第一断层区间维护单元 905 ,适于遍历数据库单元 901中的断层区间集合,找到对应 的断层数据中的最新一条阅读数据的标识与最 新连续数据中的最旧一条阅读数据的标识 紧邻的断层区间, 该断层区间为紧邻最新连续数据的断层区间。

在本发明的一个实施例中, 数据库单元 901保存的断层区间集合中的断层区间为一 个包含两个元素的数组, 该数组中的第一个元素为该断层区间所对应的 断层数据中的最 新一条数据的标识, 第二个元素为该断层区间所对应的断层数据中 的最旧一条数据的标 识。

显示单元 906 ,适于在断层数据下载单元 903接收到的服务器返回的断层数据的条数 为 0时, 向用户提示服务器上没有更旧的数据。

综上所述, 在本发明的这种断层数据处理装置中, 通过设置和维护显示标记, 只显 示最新的连续的数据, 这样用户看到数据是连续的数据, 此外还记录了断层区间, 并能 够根据所记录的断层区间集合, 从服务器获取断层数据并填补到对应的断层区 间中, 方 便了用户的使用。

需要说明的是, 在不冲突的情况下, 本发明中的实施例及实施例中的特征可以相互 任意组合。

本发明的各个部件实施例可以以硬件实现, 或者以在一个或者多个处理器上运行的 软件模块实现, 或者以它们的组合实现。 本领域的技术人员应当理解, 可以在实践中使 用微处理器或者数字信号处理器(DSP )来实现根据本发明实施例的网络搜索系统中 一 些或者全部部件的一些或者全部功能。 本发明还可以实现为用于执行这里所描述的方 法 的一部分或者全部的设备或者装置程序 (例如, 计算机程序和计算机程序产品) 。 这样 的实现本发明的程序可以存储在计算机可读介 质上, 或者可以具有一个或者多个信号的 形式。 这样的信号可以从因特网网站上下载得到, 或者在载体信号上提供, 或者以任何 其他形式提供。

例如, 图 10示出了可以实现根据本发明的断层数据处理 法或数据下载方法的计 算设备, 例如移动终端。 该计算设备传统上包括处理器 1110和以存储器 1120形式的计 算机程序产品或者计算机可读介质。 存储器 1120可以是诸如闪存、 EEPR0M (电可擦除可 编程只读存储器) 、 EPR0M、 硬盘或者 ROM之类的电子存储器。 存储器 1120具有用于执 行上述方法中的任何方法步骤的程序代码 11 31的存储空间 11 30。例如,用于程序代码的 存储空间 11 30可以包括分别用于实现上面的方法中的各种 骤的各个程序代码 11 31。这 些程序代码可以从一个或者多个计算机程序产 品中读出或者写入到这一个或者多个计算 机程序产品中。 这些计算机程序产品包括诸如硬盘 , 紧致盘( CD ) 、 存储卡或者软盘之 类的程序代码载体。这样的计算机程序产品通 常为如参考图 11所述的便携式或者固定存 储单元。 该存储单元可以具有与图 10的计算设备中的存储器 1120类似布置的存储段、 存储空间等。 程序代码可以例如以适当形式进行压缩。 通常, 存储单元包括计算机可读 代码 1131' , 即可以由例如诸如 1110之类的处理器读取的代码, 这些代码当由计算设备 运行时, 导致该计算设备执行上面所描述的方法中的各 个步骤。

本文中所称的 "一个实施例" 、 "实施例" 或者 "一个或者多个实施例" 意味着, 结合实施例描述的特定特征、 结构或者特性包括在本发明的至少一个实施例 中。 此外, 请注意, 这里 "在一个实施例中" 的词语例子不一定全指同一个实施例。

在此处所提供的说明书中, 说明了大量具体细节。 然而, 能够理解, 本发明的实施 例可以在没有这些具体细节的情况下被实践。 在一些实例中, 并未详细示出公知的方法、 结构和技术, 以便不模糊对本说明书的理解。

应该注意的是上述实施例对本发明进行说明而 不是对本发明进行限制,并且本领域 技术人员在不脱离所附权利要求的范围的情况 下可设计出替换实施例。 在权利要求中, 不应将位于括号之间的任何参考符号构造成对 权利要求的限制。 单词 "包含" 不排除存 在未列在权利要求中的元件或步骤。 位于元件之前的单词 "一" 或 "一个" 不排除存在 多个这样的元件。 本发明可以借助于包括有若干不同元件的硬件 以及借助于适当编程的 计算机来实现。 在列举了若干装置的单元权利要求中, 这些装置中的若干个可以是通过 同一个硬件项来具体体现。 单词第一、 第二、 以及第三等的使用不表示任何顺序。 可将 这些单词解释为名称。

此外, 还应当注意, 本说明书中使用的语言主要是为了可读性和教 导的目的而选择 的, 而不是为了解释或者限定本发明的主题而选择 的。 因此, 在不偏离所附权利要求书 的范围和精神的情况下, 对于本技术领域的普通技术人员来说许多修改 和变更都是显而 易见的。 对于本发明的范围, 对本发明所做的公开是说明性的, 而非限制性的, 本发明 的范围由所附权利要求书限定。