一种分页显示的方法及装置转让专利

申请号 : CN201810284981.5

文献号 : CN108848244B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘晨曦李鹏

申请人 : 阿里巴巴集团控股有限公司

摘要 :

本申请公开了一种分页显示的方法及装置,在接收到移动终端发送的查询请求时,可先对查询请求中携带的分页控制参数进行解析,从而确定执行该查询请求时需要采用的查询规则、数据源以及分别对应各数据源的查询偏移量。之后针对每个数据源,根据该查询请求、对应该数据源的查询偏移量以及所述查询规则,从该数据源获取相应的各信息。然后,再选择分页页面中需要显示的信息。最后根据选择出的信息,重新确定各数据源的查询偏移量,并将查询偏移量以及选择出的信息作为查询结果返回终端。

权利要求 :

1.一种分页显示的方法,包括:

接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数,所述分页控制参数用于使数据源确定从查询结果中选择哪些信息返回,所述分页控制参数包含查询规则;

通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量,所述对应数据源的查询偏移量为在分页页面中显示的该数据源的信息的数量;

针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;

根据各数据源返回的信息,选择分页页面需要显示的各信息;

根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并更新所述移动终端的分页控制参数,将选择出的信息以及更新后的分页控制参数返回所述移动终端;

其中,根据选择出的信息,重新确定分别对应各数据源的查询偏移量,具体包括:针对每个数据源,将选择出的信息中分别对应该数据源的信息的数量,与确定出的对应该数据源的查询偏移量之和,作为重新确定的对应该数据源的查询偏移量。

2.如权利要求1所述的方法,确定查询规则,具体包括:

若解析结果为空,则从已存储的各查询规则中,按时间先后顺序确定最后存储的查询规则;

若所述解析结果中包含查询规则的版本号,则根据所述版本号,从已存储的各查询规则中确定查询规则。

3.如权利要求1所述的方法,确定分别对应各数据源的查询偏移量,具体包括:当解析结果为空时,则对应的对应各数据源的查询偏移量均为零,否则根据所述解析结果,确定对应各数据源的查询偏移量。

4.如权利要求1所述的方法,确定需要获取信息的各数据源,具体包括:根据确定出的查询规则,确定需要获取信息的各数据源。

5.如权利要求1所述的方法,针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求,具体包括:根据所述查询请求以及所述查询规则,确定各数据源获取信息的筛选条件;

针对确定出的每个数据源,根据所述筛选条件以及对应该数据源的查询偏移量,确定针对该数据源的获取条件,并将携带有该获取条件的获取请求发送给该数据源,使得该数据源返回满足所述针对该数据源的获取条件的各信息。

6.如权利要求1所述的方法,根据各数据源返回的信息,选择分页页面需要显示的信息,具体包括:根据所述查询规则,对各数据源返回的信息进行筛选,确定分页页面需要显示的各信息。

7.如权利要求1所述的方法,将选择出的信息以及重新确定出的各查询偏移量作为查询结果返回所述移动终端,具体包括:根据重新确定出的各查询偏移量以及所述查询规则,重新编码生成分页控制参数;

将选择出的各信息以及重新编码生成的分页控制参数作为查询结果返回所述移动终端,以使所述移动终端根据所述查询结果中包含的各信息,确定所述分页页面中显示的内容,并根据所述重新编码生成的分页控制参数确定下一次发送的查询请求。

8.如权利要求2所述的方法,所述方法还包括:

当解析出的查询规则的版本号,与已存储的各查询规则的版本号均不同时,则从已存储的各查询规则中,按时间先后顺序确定最后存储的查询规则。

9.一种分页显示的装置,包括:

接收模块,接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数,所述分页控制参数用于使数据源确定从查询结果中选择哪些信息返回,所述分页控制参数包含查询规则;

解析模块,通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量,所述对应数据源的查询偏移量为在分页页面中显示的该数据源的信息的数量;

发送模块,针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;

选择模块,根据各数据源返回的信息,选择分页页面需要显示的各信息;

返回模块,根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并更新所述移动终端的分页控制参数,将选择出的信息以及更新后的分页控制参数返回所述移动终端;

其中,根据选择出的信息,重新确定分别对应各数据源的查询偏移量,具体包括:针对每个数据源,将选择出的信息中分别对应该数据源的信息的数量,与确定出的对应该数据源的查询偏移量之和,作为重新确定的对应该数据源的查询偏移量。

10.如权利要求9所述的装置,所述解析模块,若解析结果为空,则从已存储的各查询规则中,按时间先后顺序确定最后存储的查询规则,若所述解析结果中包含查询规则的版本号,则根据所述版本号,从已存储的各查询规则中确定查询规则。

11.如权利要求9所述的装置,所述解析模块,当解析结果为空时,则对应的对应各数据源的查询偏移量均为零,否则根据所述解析结果,确定对应各数据源的查询偏移量。

12.如权利要求9所述的装置,所述解析模块,根据确定出的查询规则,确定需要获取信息的各数据源。

13.如权利要求9所述的装置,所述发送模块,根据所述查询请求以及所述查询规则,确定各数据源获取信息的筛选条件,针对确定出的每个数据源,根据所述筛选条件以及对应该数据源的查询偏移量,确定针对该数据源的获取条件,并将携带有该获取条件的获取请求发送给该数据源,使得该数据源返回满足所述针对该数据源的获取条件的各信息。

14.如权利要求9所述的装置,所述选择模块,根据所述查询规则,对各数据源返回的信息进行筛选,确定分页页面需要显示的各信息。

15.如权利要求9所述的装置,所述返回模块,根据重新确定出的各查询偏移量以及所述查询规则,重新编码生成分页控制参数,将选择出的各信息以及重新编码生成的分页控制参数作为查询结果返回所述移动终端,以使所述移动终端根据所述查询结果中包含的各信息,确定所述分页页面中显示的内容,并根据所述重新编码生成的分页控制参数确定下一次发送的查询请求。

16.如权利要求10所述的装置,所述解析模块,当解析出的查询规则的版本号,与已存储的各查询规则的版本号均不同时,则从已存储的各查询规则中,按时间先后顺序确定最后存储的查询规则。

17.一种服务器,其中,所述服务器包括:一个或多个处理器及存储器,存储器存储有程序,并且被配置成由一个或多个处理器执行以下步骤:接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数,所述分页控制参数用于使数据源确定从查询结果中选择哪些信息返回,所述分页控制参数包含查询规则;

通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量,所述对应数据源的查询偏移量为在分页页面中显示的该数据源的信息的数量;

针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;

根据各数据源返回的信息,选择分页页面需要显示的各信息;

根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并更新所述移动终端的分页控制参数,将选择出的信息以及更新后的分页控制参数作为查询结果返回所述移动终端;

其中,根据选择出的信息,重新确定分别对应各数据源的查询偏移量,具体包括:针对每个数据源,将选择出的信息中分别对应该数据源的信息的数量,与确定出的对应该数据源的查询偏移量之和,作为重新确定的对应该数据源的查询偏移量。

说明书 :

一种分页显示的方法及装置

技术领域

[0001] 本申请涉及信息技术领域,尤其涉及一种分页显示的方法及装置。

背景技术

[0002] 分页显示是一种常用的显示信息的方式,可以在一个页面显示的信息有限的情况下,将信息在多个页面中分开显示。
[0003] 目前,随着提供信息的数据源的不断增加,出现了从多个数据源获取信息并进行分页显示的需求。
[0004] 并且,对于移动终端来说,由于显示信息的屏幕相对较小,因此移动终端上更多的采用分页显示的方式显示信息。
[0005] 另外,由于分页显示信息通常会按照预设的规律(如时间顺序,或者编号顺序),先将信息进行排序,再将排序后的信息按顺序分页显示,因此对于从多个数据源中获取数据的场景来说,需要综合每个数据源的信息,才能综合确定信息排序,如图1所示。图1为从多个数据源获取数据后,综合确定信息排序的示意图。其中,假设分页页面需要显示10个按照创建时间从晚到早排序的信息,则需要分别从数据源A~C中获取10个信息,并按照这30个信息的综合时间顺序确定信息排序,之后再选取其中最晚创建的10个信息用于显示在分页页面中。
[0006] 并且,提供分页页面显示服务的平台为了避免漏选或者重复获取信息,再返回分页页面以外,还需将该分页页面中的各信息对应于数据源中的位置一并返回。例如,若是按照信息创建时间的先后顺序,显示最新创建的各信息,则针对每个信息,根据该信息创建时间,可确定该信息在数据源中的位置,因此需要将分页页面中各信息的创建时间返回移动终端(或者,也可针对每个数据源,确定分页页面中对应该数据源的各信息中最早的创建时间返回移动终端)。
[0007] 以查询信息的场景为例,移动终端为用户用于查询信息的设备,服务器为提供分页页面显示服务的平台的设备,从多个数据源获取信息并显示的过程可如图2所示,包括:
[0008] S100:移动终端向服务器发送查询请求,其中所述查询请求中包含请求参数。
[0009] 若是移动终端发送的是对分页页面的首页的查询请求,则该请求参数为空。而若移动终端发送的是对分页页面的非首页的查询请求,则请求参数中还包括该请求获取的分页页面的上一页面中的各信息在数据源中的位置。
[0010] 例如,假设请求获取的分页页面的上一页面中显示的信息如表1所示。其中,各信息是按照创建时间的先后顺序倒序排序的。
[0011]信息 数据源 创建时间
信息1 数据源A 2018/2/20/10:00
信息2 数据源A 2018/2/20/9:30
信息3 数据源B 2018/2/20/9:00
信息4 数据源B 2018/2/20/6:00
信息5 数据源C 2018/2/19/9:00
[0012] 表1
[0013] 于是,移动终端可确定将:“数据源A的创建时间2018/2/20/9:30”、“数据源B的创建时间2018/2/20/6:00”、“数据源C的创建时间2018/2/19/9:00”作为请求参数中的部分参数。
[0014] 另外,请求参数中还可包含查询所需的数据(如,用户标识,关键词等等) 以及查询数量(如,分页页面中显示的信息的数量),如表2所示。
[0015]
[0016]
[0017] 表2
[0018] S102:服务器根据所述查询请求中的请求参数,分别确定向各数据源发送获取请求的参数,并分别向各数据源发送获取请求。
[0019] 继续沿用上例,以数据源A为例,服务器可根据请求参数,确定向数据源 A发送查询请求,以获取时间点2018/2/20/9:30之前对应用户标识的满足查询数据量的各信息。同理,对于数据源B和C,服务器也可根据请求参数中的响应数据,确定筛选信息的条件。
[0020] S104:各数据源分别根据接收到的获取请求,确定信息并返回所述服务器。
[0021] 继续沿用上例,仍以数据源A为例,数据源A的数据库可先根据请求参数,确定对应用户ID的各信息,之后再按照时间先后顺序倒序排序确定各信息,再根据查询数量从中确定时间点2018/2/20/9:30之前的各信息。如,表3 所示。
[0022]
[0023]
[0024] 表3
[0025] 于是,数据源A可根据查询请求中的请求参数,确定需要将信息6至信息 10返回服务器。
[0026] S106:所述服务器根据从各数据源获取的若干信息,确定信息的综合排序结果,以及根据所述综合排序结果确定分页页面中显示的各信息。
[0027] 在本步骤中,服务器可执行与图1类似的过程,根据各信息的综合排序结果,确定移动终端请求获取的分页页面中显示的各信息。
[0028] S108:将确定出的各信息以及各信息在数据源中的位置返回所述移动终端,以使所述移动终端查看下一页分页页面时,可根据信息在数据源中的位置确定查询请求中包含的请求参数。
[0029] 可见现有技术中,服务器无需存储每个查询请求对应的请求参数,而是发送给移动终端保存,减少了服务器存储数据。并且,当移动终端每次向服务器发送查询请求时,由于存储了前一次返回的分页页面中包含各信息在数据源中的位置,使得服务器可以确定本次查询需要获取哪些信息。
[0030] 但是现有分页显示方法,需要针对每个数据源分别传输用于定位信息的参数(如,表2中的各信息在数据源中的位置),使得传输的数据较为复杂,并且容易出错(如,出现丢包的情况时,可能会丢失用于定位的参数)。
[0031] 并且,由于信息排序规则除了单一的按照创建时间的先后,或者流水号的大小以外,还有其他规则。而当对信息排序的规则较为复杂时,需要传输的用于定位的参数将会相应增加,导致需要传输的参数进一步增加。而当数据源或者信息排序规则变更时,为了保证分页页面中显示的信息不出现问题,需要对移动终端以及服务器均进行更新(如,通过更新移动终端,使移动终端确定请求参数时,也会确定新增加的数据源对应的请求参数)。
[0032] 可见现有分页显示方法在用于移动终端时不够灵活,更新和传输数据复杂。因此,本说明书提供一种新的分页显示方法。

发明内容

[0033] 本说明书实施例提供一种分页显示的方法及装置,用于解决现有从多数据源获取并进行分页显示的方法,移动终端与服务器之间传输的用于确定分页内容的请求参数过于复杂,导致难以灵活的变更查询规则和数据源的问题。
[0034] 本说明书实施例采用下述技术方案:
[0035] 一种分页显示的方法,包括:
[0036] 接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数;
[0037] 通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量;
[0038] 针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;
[0039] 根据各数据源返回的信息,选择分页页面需要显示的各信息;
[0040] 根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并将选择出的信息以及确定出的各查询偏移量作为查询结果返回所述移动终端。
[0041] 一种分页显示的装置,包括:
[0042] 接收模块,接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数;
[0043] 解析模块,通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量;
[0044] 发送模块,针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;
[0045] 选择模块,根据各数据源返回的信息,选择分页页面需要显示的各信息;
[0046] 返回模块,根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并将选择出的信息以及确定出的各查询偏移量作为查询结果返回所述移动终端。
[0047] 一种服务器,其中,所述服务器包括:一个或多个处理器及存储器,存储器存储有程序,并且被配置成由一个或多个处理器执行以下步骤:
[0048] 接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数;
[0049] 通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量;
[0050] 针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;
[0051] 根据各数据源返回的信息,选择分页页面需要显示的各信息;
[0052] 根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并将选择出的信息以及确定出的各查询偏移量作为查询结果返回所述移动终端。
[0053] 本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
[0054] 通过本说明书提供的方法及装置,在接收到移动终端发送的查询请求时,可先对查询请求中携带的分页控制参数进行解析,从而确定执行该查询请求时需要采用的查询规则、数据源以及分别对应各数据源的查询偏移量。之后针对每个数据源,根据该查询请求、对应该数据源的查询偏移量以及所述查询规则,从该数据源获取相应的各信息。然后,再选择分页页面中需要显示的信息。最后根据选择出的信息,重新确定各数据源的查询偏移量,并将查询偏移量以及选择出的信息作为查询结果返回终端。其中,该数据源的查询偏移量为已经在分页页面中显示的该数据源的信息的数量,将用于确定信息位置的信息从现有技术中复杂的数据,变为简单的数量,减少了数据传输的复杂程度。同时,由于仅记录了数量的偏移量,使得无论查询规则或者数据源如何变更,也无需对移动终端进行更新,使得查询规则和数据源的变更可以更加灵活。

附图说明

[0055] 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0056] 图1为从多个数据源获取数据后,综合确定信息排序的示意图;
[0057] 图2为从多个数据源获取信息并显示的过程;
[0058] 图3为本说明书实施例提供的一种分页显示的过程的示意图;
[0059] 图4为本说明书提供的多种浏览分页页面的示意图;
[0060] 图5为本说明书实施例提供的无缝分页页面示意图;
[0061] 图6为本说明书实施例提供的一种分页显示的装置的结构示意图;
[0062] 图7为本说明书实施例提供的一种服务器的结构示意图。

具体实施方式

[0063] 为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0064] 以下结合附图,详细说明本申请各实施例提供的技术方案。
[0065] 图3为说明书实施例提供的一种分页显示的过程,具体可包括以下步骤:
[0066] S200:接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数。
[0067] 在本说明书一个或多个实施例中,可由提供查询服务并进行分页显示的服务器执行该分页显示的过程。其中,该服务器提供在移动终端中显示的分页页面。该服务器可以是单独的一台设备,或者也可以是由多台服务器组成的服务器集群(如,分布式服务器),该移动终端可以是手机、平板电脑等设备,本说明书对此不做限定。
[0068] 具体的,该服务器由于是提供分页显示查询结果的服务器,因此可接收移动终端发送的查询请求,并且,由于需要进行分页显示,服务器还需要确定返回的分页页面中包含的信息,因此该查询请求中还可携带有分页控制参数。
[0069] 通常对于进行分页显示的移动终端来说,已经获取的分页页面可存储于缓存中,并在需要显示时再从缓存中调取,以减少与服务器之前的通信次数。例如,假设移动终端已经缓存了3页分页页面,页面1~3,当用户看完页面3之后,返回查看页面2,则移动终端可以从缓存中调取页面2的内容并显示,而无需再次向服务器发送查询请求。因此,在本说明书中,该查询请求为针对未获取过的分页页面的获取请求。
[0070] 并且,由于通常移动终端中为了减轻用户的操作,并不会设置跳页浏览分页页面的功能,因此用户只能按照分页页面顺序或者倒序的显示页面。因此,只有正序获取新的分页页面时,才存在向服务器发送查询请求的需求。如,图 4所示。
[0071] 图4为本说明书提供的多种浏览分页页面的示意图,其中每排为分页页面示意图,虚线为移动终端为获取的分页页面,实线为移动终端已经获取的分页页面,手机包围的分页页面为当前显示的页面,箭头为用户下一个想要查看的分页页面,每个分页页面下方的数字表示该分页页面是第几个分页。第一排:移动终端未缓存任何分页页面,因此需要发送查询请求以获取分页页面的首页。第二排:用户下一个想要查看的分页页面为当前显示的分页页面的上一个,因此可从缓存中获取。第三排:用户下一个想要查看的分页页面为当前显示的分页页面的下一个,因此需要发送查询请求。可见,用户只能连续获取分页页面,而无法跳页获取分页页面。如,无法从第一页直接跳转至第三页,而只能先获取第二页,之后再获取第三页。
[0072] 需要说明的是,通常这类分页页面会被做成长条的无缝页面,如图5所示,使用户无感知的连续获取分页页面。图5中显示的分页页面可连续上下滑动,并且由于是无缝的页面,从而使得用户感知不到已经执行了“查看下一页”的操作。
[0073] 通过上述说明可见,只有获取移动终端未缓存当前分页页面的下一页时,需要发送查询请求。因此该查询请求中携带的分页控制参数,具体可为获取下一分页页面的参数。
[0074] 为了方便描述,本申请先以获取分页页面的首页为例进行说明。则该分页控制参数可为空。
[0075] 另外,该查询请求中包含获取查询结果所需的数据,如表2中的用户标识和查询数量,该数据用于使数据源确定查询结果,而分页控制参数用于使数据源确定从查询结果中选择那些信息返回服务器。
[0076] 进一步地,由于确定分页页面中的信息时,需要按照排序规则,先对信息进行排序,再选择需要获取的信息,因此该分页控制参数中还可包含查询规则。该查询规则具体可包括:获取信息时信息的排序规则、获取查询结果的数量以及需要获取信息的各数据源。如表4所示。
[0077]
[0078] 表4
[0079] 表4假设为服务器中已创建的各查询规则包含的内容,其中可见T1、T2 以及T3获取信息的数据源都不完全相同,并且采用的排序规则也不完全相同。
[0080] 而在本说明书中,服务器在接收到的分页控制参数为空时,可从各查询规则中,确定最新创建的查询规则作为该查询请求的分页控制参数中包含的查询规则。
[0081] 更进一步地,该分页控制参数中的查询规则具体也可以是查询规则的版本号,而并非查询规则本身,则只有服务器中存储有查询规则的具体内容。服务器在解析得到查询规则的版本号后,再根据该版本号确定需要采用的查询规则,减少移动终端与服务器之间传输数据量。
[0082] S202:通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量。
[0083] 在本说明书实施例中,服务器在接收到查询请求后,可对该分页控制参数进行解析,以确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量。
[0084] 具体的,如步骤S200中所述的,需要获取信息的各数据源可根据查询规则确定。另外,该分页控制参数具体可以是Json文件,服务器可通过对该Json 文件进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量。
[0085] 继续以该查询请求为获取分页页面的首页为例进行说明,该分页控制参数可为空,则服务器可如步骤S200中所述的,确定最新创建的查询规则为该查询请求的查询规则。之后,便可根据该查询规则,确定需要获取信息的各数据源。并且,由于此时获取的是分页页面的首页,因此服务器还没有选择任何数据源的信息作为分页页面的内容,因此服务器可以确定分别对应各数据源的查询偏移量为零。
[0086] 继续沿用表4所示例子,假设T3为最新创建的查询规则,则服务器可确定:查询规则为T3,数据源为数据源A、数据源C、数据源D,而对应数据源 A、数据源C以及数据源D的查询偏移量为零。
[0087] S204:针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求。
[0088] 在本说明书中,由于服务器已经确定出了需要获取信息的数据源,因此可针对每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求,以从数据源处获取符合要求的各信息。
[0089] 具体的,服务器可根据查询请求中包含的进行查询所需的数据、排序规则、获取数量以及对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求。则该数据源可返回响应的查询结果。
[0090] 继续沿用上例,则对于数据源A来说,假设查询所需的数据为用户的标识 (如用户y)的交易信息,则数据源A可先查询确定用户y的各交易信息,再按照修改时间倒序对各交易信息倒序排序,之后按照查询偏移量确定起始获取信息,按照获取数量确定需要获取那些信息。如表5所示。
[0091]
[0092] 表5
[0093] 由于当前查询偏移量为0,获取数量为5,因此数据源A可确定按照表5 对各交易信息,按照修改时间倒序排序后,确定返回交易信息1~5。
[0094] S206:根据各数据源返回的信息,选择分页页面需要显示的各信息。
[0095] 在本说明书实施例中,与现有技术相同,服务器可对从各数据源返回的各信息,按照查询规则确定综合排序结果,之后再按照分页页面中需要显示的信息的数量,选择分页页面需要显示的各信息。由于,该步骤已经是较为常见的操作,因此本说明书对此不再赘述。
[0096] S208:根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并将选择出的信息以及确定出的各查询偏移量作为查询结果返回所述移动终端。
[0097] 在本说明书中,当服务器确定选择出的信息之后,当移动终端后续需要查看该分页页面的下一页时,由于需要根据该分页页面中包含的信息,确定该下一页需要显示的信息,因此服务器还可重新确定分别对应各数据源的查询偏移量以返回该移动终端。
[0098] 具体的,针对每个数据源,服务器可将选择出的各信息中,确定属于该数据源的信息的数量,再将步骤S202从分页控制参数中解析出的对应该数据源的查询偏移量与该数量相加,重新确定该数据源的查询偏移量。
[0099] 继续以该查询请求为获取分页页面的首页为例进行说明,假设服务器在步骤S206中确定出的各信息如表6所示。
[0100] 信息 数据源信息1 数据源A
信息2 数据源A
信息x 数据源B
信息x+1 数据源B
信息x+2 数据源B
[0101] 表6
[0102] 则对于数据源A来说,由于步骤S202确定的查询偏移量为0,则可重新确定对应数据源A的查询偏移量为2。同理,对应数据源B的查询偏移量为2,对应数据源C的查询偏移量仍为0。
[0103] 并且,假设此时采用的查询规则为T3,则服务器还可确定分页控制参数对应的查询规则为T3,因此可确定更新后该移动终端的分页规则。具体为:查询规则T3、对应数据源A的查询偏移量为2、对应数据源B的查询偏移量为2以及对应数据源C的查询偏移量为0。于是,服务器可对该分页控制参数的内容进行编码,确定分页控制参数。
[0104] 最后,将选择出的分页页面中显示的信息以及更新后的分页控制参数返回移动终端。
[0105] 进一步地,当移动终端需要获取下一页分页页面时(即,第二页),该服务器根据该分页控制参数可确定查询规则T3、对应数据源A的查询偏移量为2、对应数据源B的查询偏移量为2以及对应数据源C的查询偏移量为0。则服务器在向各数据源发送获取请求之后,各数据源可根据查询规则T3对应的排序规则、对应自身的查询偏移量以及获取数量确定返回的信息。
[0106] 具体的,若查询偏移量为u,获取数量为q,则数据源可确定获取从u+1 至u+1+q的信息返回服务器。
[0107] 例如,继续以数据源A为例,如表5所示,该数据源A可确定查询偏移量为2,获取数量为5,则数据源A可确定返回第2+1至第2+5+1的交易信息,即交易信息3~8。
[0108] 基于图3所示的分页显示过程,移动终端与服务器之间,除了分页页面中需要显示的信息以外,仅需传输分页控制参数,而分页控制参数仅为数量的数值。查询规则也可以采用查询规则的版本号代替。使得移动终端与服务器之间传输的数据更为简单。并且,由于数据源的变更以及排序规则,是由查询规则确定的,而移动终端首次的查询规则是由服务器提供的,因此只要移动终端进行了分页页面的首页查询,各分页页面显示信息的数据源以及信息的排序规则便已经确定,而无需移动终端进行配置变更。使得在变更查询规则时,仅需对服务器中的查询规则进行变更即可,提高了更新数据源的变更以及排序规则的灵活性。
[0109] 另外,在本说明书中,由于查询规则都是由服务器提供的,因此当服务器存在多个时,可以逐步更新各服务器中存储的查询规则,而无需统一更新。而若假设,当服务器获取到了为自身未存储的查询规则时,可以重新选择自身已存储的各查询规则中最新创建的查询规则,而不会导致查询失败。
[0110] 例如,假设查询规则T3、T2以及T1为先后依次创建的3条查询规则,其中T3为最新创建的,进一步假设服务器a1存储有T2以及T1,当在步骤 S202解析后得到的查询规则为T3时,服务器可采用查询规则T2继续后续流程。
[0111] 或者,当服务器获取到了为自身未存储的查询规则时,也可向其他服务器发送获取步骤S202解析出的查询规则的请求,以自动的更新自身存储的查询规则。当然,上述两种方法具体如何实施本说明书不做限定。
[0112] 需要说明的是,本说明书实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S200和步骤S202的执行主体可以为设备1,步骤S202的执行主体可以为设备2;或者,步骤S200的执行主体可以为设备1,步骤S202和步骤S204的执行主体可以为设备2;等等。上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0113] 基于图3所示的分页显示的方法,本说明书实施例还提供一种分页显示的装置,如图6所示。
[0114] 图6为本说明书实施例提供的一种分页显示的装置的结构示意图,所述装置包括:
[0115] 接收模块300,接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数;
[0116] 解析模块302,通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量;
[0117] 发送模块304,针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;
[0118] 选择模块306,根据各数据源返回的信息,选择分页页面需要显示的各信息;
[0119] 返回模块308,根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并更新该移终端的分页控制参数,将选择出的信息以及更新后的分页控制参数返回所述移动终端。
[0120] 所述解析模块302,若解析结果为空,则从已存储的各查询规则中,按时间先后顺序确定最后存储的查询规则,若所述解析结果中包含查询规则的版本号,则根据所述版本号,从已存储的各查询规则中确定查询规则。
[0121] 所述解析模块302,当解析结果为空时,则对应的对应各数据源的查询偏移量均为零,否则根据所述解析结果,确定对应各数据源的查询偏移量。
[0122] 所述解析模块302,根据确定出的查询规则,确定需要获取信息的各数据源。
[0123] 所述发送模块304,根据所述查询请求以及所述查询规则,确定各数据源获取信息的筛选条件,针对确定出的每个数据源,根据所述筛选条件以及对应该数据源的查询偏移量,确定针对该数据源的获取条件,并将携带有该获取条件的获取请求发送给该数据源,使得该数据源返回满足所述针对该数据源的获取条件的各信息。
[0124] 所述选择模块306,根据所述查询规则,对各数据源返回的信息进行筛选,确定分页页面需要显示的各信息。
[0125] 所述返回模块308,针对每个数据源,根据选择出的信息中分别对应该数据源的信息的数量,以及确定出的对应该数据源的查询偏移量,重新确定对应该数据源的查询偏移量。
[0126] 所述返回模块308,根据重新确定出的各查询偏移量以及所述查询规则,重新编码生成分页控制参数,将选择出的各信息以及重新编码生成的分页控制参数作为查询结果返回所述移动终端,以使所述移动终端根据所述查询结果中包含的各信息,确定所述分页页面中显示的内容,并根据所述重新编码生成的分页控制参数确定下一次发送的查询请求。
[0127] 所述解析模块302,当解析出的查询规则的版本号,与已存储的各查询规则的版本号均不同时,则从已存储的各查询规则中,按时间先后顺序确定最后存储的查询规则。
[0128] 基于图3所述的分页显示的方法,本说明书对应提供一种服务器,如图7 所示,其中,所述服务器包括:一个或多个处理器及存储器,存储器存储有程序,并且被配置成由一个或多个处理器执行以下步骤:
[0129] 接收移动终端发送的查询请求,其中,所述查询请求中携带有分页控制参数;
[0130] 通过对所述分页控制参数进行解析,确定查询规则、需要获取信息的各数据源以及分别对应各数据源的查询偏移量;
[0131] 针对确定出的每个数据源,根据所述查询请求、对应该数据源的查询偏移量以及所述查询规则,向该数据源发送获取请求;
[0132] 根据各数据源返回的信息,选择分页页面需要显示的各信息;
[0133] 根据选择出的信息,重新确定分别对应各数据源的查询偏移量,并更新该移终端的分页控制参数,将选择出的信息以及更新后的分页控制参数返回所述移动终端。
[0134] 在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array, FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、 Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL (Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL (Ruby Hardware Description Language)等,目前最普遍使用的是VHDL (Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
[0135] 控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
[0136] 上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0137] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0138] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0139] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0140] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0141] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0142] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0143] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0144] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0145] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0146] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0147] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0148] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0149] 以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。