CN107679077B - 分页的实现方法、装置、计算机设备及存储介质 - Google Patents
分页的实现方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN107679077B CN107679077B CN201710752036.9A CN201710752036A CN107679077B CN 107679077 B CN107679077 B CN 107679077B CN 201710752036 A CN201710752036 A CN 201710752036A CN 107679077 B CN107679077 B CN 107679077B
- Authority
- CN
- China
- Prior art keywords
- data
- server
- keyword
- inquired
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000012163 sequencing technique Methods 0.000 claims abstract description 16
- 238000004590 computer program Methods 0.000 claims description 8
- 238000003491 array Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种分页的实现方法、装置、计算机设备及存储介质,属于计算机技术领域。上述分页的实现方法包括接收到输入的数据查询的关键字时,将该关键字发送给服务器;接收该服务器发送的数据,该数据包括该服务器根据该关键字查询到的数据,当该数据的大小在应用端的负荷范围之内时,该数据包括该服务器查询到的全部数据;根据接收的排序规则,对接收到的全部数据按照该排序规则进行排序;获取在一个页面中显示的数据的预设的数量;当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页。本发明一方面节省了多次数据请求的响应时间及用户等待请求的时间,降低了服务器端的负荷,提高了排序后分页显示的效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及分页的实现方法、装置、计算机设备及存储介质。
背景技术
在传统的页面展示的实现方法,尤其是排序展示的实现方法中,首先是由本端终端设备向对端服务器发送数据请求,对端服务器接收本端的数据请求之后,由对端服务器依据请求的内容进行查找、排序等操作,然后将排序的结果发送给本端进行显示,当用户点击下一页按钮时,本端会再次向服务器端发送数据请求,服务器需要再次进行响应。
传统技术方案的缺陷在我们浏览网页的时候就可以发现,经常会遇到这样的情况,当我们需要查询符合输入要求的信息时,一页中会优先显示排在前面的信息,当我们点击选择下一页时,需要等待一段时间网页页面才会将下一页的内容进行显示,这中间的时间就是本端在向服务器发送数据请求、服务器的处理及响应时间,当同时有很多客户端在向服务器发送请求时,这种方案一方面给服务器带来了较大的负担,另一方面与服务器的多次交互多次响应也增加了用户等待的时间。
发明内容
本发明实施例提供了一种分页的实现方法、装置、计算机设备及存储介质,可以减轻服务器负担,较少用户在页面切换时的等待时间,提高页面切换的效率。
一种分页的实现方法,该方法包括:
接收到输入的数据查询的关键字时,将该关键字发送给服务器;
接收该服务器发送的数据,该数据包括该服务器根据该关键字查询到的数据,当该数据的大小在应用端的负荷范围之内时,该数据包括该服务器查询到的全部数据;
根据接收的排序规则,对接收到的全部数据按照该排序规则进行排序;
获取在一个页面中显示的数据的预设的数量;
当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页。
进一步地,该关键字包括数据的类型以及排序的依据,该将该关键字发送给服务器的步骤包括:
将该数据的类型及排序依据发送给服务器;
该接收该服务器发送的数据的步骤中,该数据包括该服务器根据该数据的类型查询到的且携带有该排序依据的数据。
进一步地,该排序的依据包括该数据的被访问量和/或最近一次被访问的时间。
进一步地,在该接收该服务器发送的数据的步骤之后,该方法还包括:
将接收的数据组织成关键字值或数组或大对象;
将组织后的数据存储在缓存中。
进一步地,上述应用端的负荷范围为0M~10M。
一种分页的实现装置,该装置包括:
关键字发送模块,用于接收到输入的数据查询的关键字时,将该关键字发送给服务器;
数据接收模块,用于接收该服务器发送的数据,该数据包括该服务器根据该关键字查询到的数据,当该数据的大小在应用端的负荷范围之内时,该数据包括该服务器查询到的全部数据;
排序模块,用于根据接收的排序规则,对接收到的全部数据按照该排序规则进行排序;
数量获取模块,用于获取在一个页面中显示的数据的预设的数量;
分页模块,用于当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页。
进一步,该关键字包括数据的类型以及排序的依据,该关键字发送模块具体用于:
将该数据的类型及排序依据发送给服务器;
该数据接收模块接收的数据包括该服务器根据该数据的类型查询到的且携带有该排序依据的数据。
进一步,该装置还包括:
组织模块,用于将接收的数据组织成关键字值或数组或大对象;
缓存模块,用于将组织后的数据存储在缓存中。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现上述分页的实现方法。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述分页的实现方法中的步骤。
本发明通过在接收到数据查询的关键字时,将该关键字发送给服务器,以供服务器根据该关键字进行数据查询,并将查询到的全部数据发送给本端(即应用端),本端在接收数据时通过判断服务器端发送的数据的大小是否为在本端的处理能力之内,若是,则接收服务器发来的全部数据并对接收的全部数据进行排序,然后再将在本端进行全排后的数据进行分页显示,本方案通过在一次数据请求中接收尽可能多的数据并进行全排显示,一方面节省了多次数据请求的响应时间及用户的等待请求的时间,另一方面由于排序步骤是在本端进行的,不需要服务器端对查询到的数据进行排序,降低了服务器端的负荷,提高了排序后分页显示的效率。
附图说明
图1为根据本发明的一个实施例的分页的实现方法流程图;
图2为根据本发明的另一实施例的分页的实现方法流程图;
图3为根据本发明的又一实施例的分页的实现方法流程图;
图4为根据本发明的一个实施例的分页的实现装置的示范性结构框图;
图5为根据本发明的一个实施例的计算机设备的内部结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为根据本发明的一个实施例的分页的实现方法流程图,下面结合图1来详细描述根据本发明的一个实施例的分页的实现方法,该方法可应用于诸如PC个人电脑、移动终端、平板电脑之类的终端设备,如图1所示,该方法包括以下步骤S101~S105。
S101、接收到输入的数据查询的关键字时,将该关键字发送给服务器。
根据本实施例的一个示例,该关键字的输入操作一般由用户来执行,该关键字为对端服务器查询数据的依据,用户可以在浏览器中输入需要查找的关键字。
S102、接收该服务器发送的数据,该数据包括该服务器根据该关键字查询到的数据,当该数据的大小在应用端的负荷范围之内时,该数据包括该服务器查询到的全部数据。
根据本实施例的一个示例,该数据包括服务器根据该关键字查询到的全部数据,该步骤S102中只接收在应用端的负荷范围之内的数据可以有以下两种实现方法:
其一是当接收到服务器返回查询到的数据时,判断服务器端回发的数据的大小是否在应用端的负荷范围之内,若是,则接收服务器端返回的数据,当服务器端回发的数据的大小超过应用端的负荷范围时,也可以有两种处理方式,其中的一种方法是拒绝接收服务器端发送的数据,另一种方法是向服务器端返回超负荷的信息,以使得服务器端将查询到的数据分段发送给本端,根据本实施例的一个示例,每段的数据的大小为应用端可以承受的最大负荷。
其二是预先在服务器端存储预存的与终端设备对应的最大负荷的数值,在服务器端在查询到满足要求的数据时,判断查询到的数据是否在对应的终端设备的最大负荷的范围之内,若是,则将查询到的数据一次性全部发送给对应的终端设备,否则,对查询到的数据进行分段,每段数据的大小不超过对应的终端设备能够承受的最大负荷。
根据本实施例的另一示例,上述应用端的负荷范围为0M~10M,其中,M表示“兆”,优选地,可以设置为8M。
S103、根据接收的排序规则,对接收到的全部数据按照该排序规则进行排序。
根据本实施例的一个示例,该步骤中的排序规则包括但不限于按数据被访问的时间进行排序、按数据被访问的次数进行排序、按照该数据资源所标记的位置距离应用端位置的远近进行排序、按照多种排序依据进行综合排序等等。
在该步骤中,排序步骤是对接收到的所有数据进行排序,即做全排,该排序步骤是由应用端执行。
根据本实施例的另一示例,上述的数据可以是视频数据、交易的商品数据、图片数据、音频数据等等。只要是需要通过网络查询、访问以及需要做排序处理的方案都可以采用根据本发明的实施例提供的分页的实现方法。
S104、获取在一个页面中显示的数据的预设的数量。
在其中的一个实施例中,在一个页面中显示的数据的数量可以由用户自己在设置项中进行设置,也可以由程序员预先进行统一的设置。
在该步骤中,在一个页面中显示的数据的数量的一个使用场景例如,用户可以在浏览器设置项中设置某一个条目在一页中显示的最大数据,当然,如果在浏览器中用户可以根据自己的需要进行预设需要该浏览器提供给用户对应的设置权限。
在其中的一个使用场景中,例如我们在做专利检索的事务时,在有些浏览器中,用户可以自己设置在一个页面中显示的检索出来的专利的项数,我们在淘宝购物搜索商品时,也可以自己在浏览器中设置一个页面中显示出来的商品或者商家的个数。
根据本实施例的一个示例,上述预设的在一个页面中显示的数据的数量可以是十个、十五个、二十个等等。
S105、当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页。
根据本实施例的一个使用场景例如,排序后的数据的数量有57个,通过上述步骤S104获取的预设的在一个页面中显示的数据的数量为十个,则需要对排序后的数据进行分页,根据本实施例的一个使用场景中,可以将排序后的57个数据分成六页,前五页每页十个数据,第六页包含七个数据,在第一页中显示排在前十的数据,将剩余的页码以及该页码对应显示的数据进行存储,进一步地,可以将剩余的页码以及与每个页码对应显示的数据以及数据显示的顺序进行缓存。
本实施例提供的分页的实现方法通过向服务器端发送数据查询的关键字,指示服务器根据该关键字进行数据查询,并将查询到的数据尽可能多的一次性都发送给本端,以使得本端可以对接收到的所有数据进行排序,并将排序后的数据分页显示,使得用户在查询数据时,减少了本端与对端服务器的交互次数,减少了服务器需要多次响应本端的数据请求的响应时间,且用户在使用本实施例提供的分页的实现方法时,由于排序及分页步骤已经提前做好了,用户在点击下一页按钮进行页面切换时,***的响应时间会非常快,减少了用户的等待时间,提高了分页排序的效率。
图2为根据本发明的另一实施例的分页的实现方法流程图,下面结合图2来详细描述根据本发明的另一实施例的分页的实现方法,上述关键字包括数据的类型以及排序的依据,如图2所示,该方法在包括上述步骤S103~S105的基础上,上述步骤S101进一步包括:将所述数据的类型及排序依据发送给服务器。其中,所述接收所述服务器发送的数据的步骤S102中,所述的数据包括所述服务器根据所述数据的类型查询到的且携带有所述排序依据的数据。
在其中的一个实施例中,该步骤S101进一步包括以下步骤S201:
S201、接收到输入的数据查询的类型以及排序的依据时,将该数据的类型以及排序的依据发送给服务器。
上述步骤S202进一步为以下步骤S202:
S202、接收该服务器发送的数据,该数据包括该服务器根据该数据的类型查询到的且携带有该排序依据的数据,当该数据的大小在应用端的负荷范围之内时,该数据包括该服务器查询到的全部数据。
根据本实施例的一个示例,该排序的依据包括该数据的被访问量和/或最近一次被访问的时间。该排序的依据根据用户输入的排序规则自动获取的数据,例如,用户在上述步骤S301中输入的排序规则为按照最近一次被访问的时间距离当前时间的由近到远进行排序时,该关键字中包含的排序依据可以是查询的数据携带的最近一次被访问的时间,当用户在上述步骤S301中输入的排序规则为按照历史被访问次数由多到少进行排序时,该关键字中包含的排序依据可以是查询的数据携带的历史被访问的次数。在另一个示例中,当需要对查询到的数据进行综合排序时,该关键字中包含的排序依据需要同时携带该数据最近一次被访问的时间以及被访问的历史次数。
图3为根据本发明的又一实施例的分页的实现方法流程图,下面结合图3来详细描述根据本发明的又一实施例的分页的实现方法,如图3所示,该方法在包括上述步骤S101~S105的基础上,还包括以下步骤S301和S302。
S301、将接收的数据组织成关键字值或数组或大对象。
根据本实施例的一个示例,该步骤中的将接收的数据组织成关键字数值即将接收的数据组织成key-value,将接收到的数据以键值(key-value)的形式存储在数据库中,由于key-value对应的分布式存储***查询速度快、存放数据量大、支持高并发,非常适合通过主键进行查询,如果不需要将接收到的数据发送给其它端,且接收的数据为以下情况中的至少一种:数字、字符、英文字符、标点,可以将接收到的数据存储为关键字值。
在另一个实施例中,可以将接收的数据组织成数组,由于以数组的形式进行存储的数据可以实现存储区间的连续存储,所以以数据形式存储的数据十分节省存储空间,如果应用端在接收到服务器端发送的查询到的数据后不再需要将这些数据发送给其它端时,则可以将接收的数据组织成数组。
在其它实施例中,还可以将接收到的数据组织成大对象((large object,lob),上述大对象为数据的一种组织方式,是Oracle数据库中的一种数据类型,由于以大对象形式存储的数据在数据传输的过程中不容易丢失,当用户需要将接收到的数据处理后发送给其它端时,可以将接收到的数据组织成大对象进行存储,以使得在传输的过程中不会出现数据丢失或者缺失的问题,保证传输质量。
在实际使用场景中,用户可以根据实际的需求以及接收到的数据的类型对接收到的数据组织成对应的形式,以便于后续的操作流程。
S302、将组织后的数据存储在缓存中。
根据本实施例的一个示例,可以将组织后的数据存储在浏览器的缓存中,其中的浏览器包括但不限于IE浏览器、火狐浏览器、谷歌浏览器、遨游浏览器等等。
本实施例通过提供将接收到的数据重新组织成关键字值或数组或大对象的方式,使得用户可以根据对数据的实际处理需求对接收到的数据进行对应的组织,以便于后续的处理流程,本实施例通过将组织后的数据存储在缓存中可以提高页面的显示速度,进一步减少在进行页面切换时需要等待的时间,提高数据的处理效率。
根据本实施例的一个示例,上述步骤S101~S302的标号并不用于限定本实施例中各个步骤的先后顺序,各个步骤的编号只是为了使得描述各个步骤时可以通用引用该步骤的标号进行便捷的指代,例如上述步骤S301和S302可以在S103的步骤之前,也可以在步骤S103的步骤之后,只要各个步骤执行的顺序不影响本实施例的逻辑关系即表示在本申请请求保护的范围之内。
图4为根据本发明的一个实施例的分页的实现装置的示范性结构框图,下面结合图4来详细描述根据本发明的一个实施例的分页的实现装置10,如图4所示,该装置包括:
关键字发送模块11,用于接收到输入的数据查询的关键字时,将该关键字发送给服务器;
数据接收模块12,用于接收该服务器发送的数据,该数据包括该服务器根据该关键字查询到的数据,当该数据的大小在应用端的负荷范围之内时,该数据包括该服务器查询到的全部数据;
排序模块13,用于根据接收的排序规则,对接收到的全部数据按照该排序规则进行排序;
数量获取模块14,用于获取在一个页面中显示的数据的预设的数量;
分页模块15,用于当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页。
在其中的一个实施例中,关键字发送模块接收到的关键字一般由用户来输入或者选择,该关键字为对端服务器查询数据的依据,用户可以在浏览器中输入需要查找的关键字。
在另一实施例中,该数据接收模块接收到的数据包括服务器根据该关键字查询到的全部数据,该数据接收模块还包括:
第一判断单元,用于当接收到服务器返回查询到的数据时,判断服务器端回发的数据的大小是否在应用端的负荷范围之内,若是,则接收服务器端返回的数据,当服务器端回发的数据的大小超过应用端的负荷范围时,拒绝接收服务器端发送的数据,或向服务器端返回超负荷的信息,以使得服务器端将查询到的数据分段发送给应用端。根据本实施例的一个示例,每段的数据的大小为应用端可以承受的最大负荷。
还可以通过在服务器端设置预设模块和第二判断单元来控制接收到的数据不超过应用端的最大负荷。
预设模块,用于预先在服务器端存储预存的与终端设备对应的最大负荷的数值;
第二判断单元,用于在服务器端在查询到满足要求的数据时,判断查询到的数据是否在对应的终端设备的最大负荷的范围之内,若是,则将查询到的数据一次性全部发送给对应的终端设备,否则,对查询到的数据进行分段,每段数据的大小不超过对应的终端设备能够承受的最大负荷。
根据本实施例的另一示例,上述应用端的负荷范围为0M~10M,优选地,可以设置为8M。
根据本实施例的另一示例,上述排序模块可以用于按数据被访问的时间进行排序、按数据被访问的次数进行排序、按照该数据资源所标记的位置距离应用端位置的远近进行排序、按照多种排序依据进行综合排序等等。
该排序模块是对接收到的所有数据进行排序,即做全排。
根据本实施例的另一示例,上述的数据可以是视频数据、交易的商品数据、图片数据、音频数据等等。只要是需要通过网络查询、访问以及需要做排序处理的方案都可以采用根据本发明的实施例提供的分页的实现方法。
在其中的一个实施例中,在一个页面中显示的数据的数量可以由用户自己在设置项中进行设置,也可以由程序员预先进行统一的设置。
在其中的一个实施例中,用户可以在浏览器设置项中设置某一个条目在一页中显示的最大数据,当然,如果在浏览器中用户可以根据自己的需要进行预设需要该浏览器提供给用户对应的设置权限。
根据本实施例的一个使用场景例如,通过排序模块进行排序后的数据的数量有57个,通过上述数据获取模块获取的预设的在一个页面中显示的数据的数量为十个,则需要对排序后的数据进行分页,根据本实施例的一个使用场景,该排序模块可以将排序后的57个数据分成六页,前五页每页十个数据,第六页包含七个数据,在第一页中显示排在前十的数据,将剩余的页码以及该页码对应显示的数据进行存储,进一步地,可以将剩余的页码以及与每个页码对应显示的数据以及数据显示的顺序进行缓存。
根据本实施例的另一个实施例,该关键字包括数据的类型以及排序的依据,该关键字发送模块具体用于:
将该数据的类型及排序依据发送给服务器,该排序的依据包括该数据的被访问量和/或最近一次被访问的时间;
该数据接收模块接收的数据包括该服务器根据该数据的类型查询到的且携带有该排序依据的数据。
该排序的依据包括该数据的被访问量和/或最近一次被访问的时间。该排序的依据根据用户输入的排序规则自动获取的数据,例如,通过排序模块接收的排序规则为按照最近一次被访问的时间距离当前时间的由近到远进行排序时,该关键字中包含的排序依据可以是查询的数据携带的最近一次被访问的时间,当通过排序模块接收到的排序规则为按照历史被访问次数由多到少进行排序时,该关键字中包含的排序依据可以是查询的数据携带的历史被访问的次数。在另一个示例中,当需要对查询到的数据进行综合排序时,该关键字中包含的排序依据需要同时携带该数据最近一次被访问的时间以及被访问的历史次数。
进一步地,该分页的实现装置还包括:
组织模块,用于将接收的数据组织成关键字值或数组或大对象;
缓存模块,用于将组织后的数据存储在缓存中。
在其中的一个实施例中,通过组织模块将接收的数据组织成关键字数值即将接收的数据组织成key-value,将接收到的数据以键值(key-value)的形式存储在数据库中,由于key-value对应的分布式存储***查询速度快、存放数据量大、支持高并发,非常适合通过主键进行查询,如果不需要将接收到的数据发送给其它端,且接收的数据为以下情况中的至少一种:数字、字符、英文字符、标点,可以将接收到的数据存储为关键字值。
在另一个实施例中,通过组织模块将接收的数据组织成数组,由于以数组的形式进行存储的数据可以实现存储区间的连续存储,所以以数据形式存储的数据十分节省存储空间,如果应用端在接收到服务器端发送的查询到的数据后不再需要将这些数据发送给其它端时,则可以将接收的数据组织成数组。
在其它实施例中,还可以通过组织模块将接收到的数据组织成大对象((largeobject,lob),由于以大对象形式存储的数据在数据传输的过程中不容易丢失,当用户需要将接收到的数据处理后发送给其它端时,可以将接收到的数据组织成大对象进行存储,以使得在传输的过程中不会出现数据丢失或者缺失的问题,保证传输质量。
在实际使用场景中,用户可以根据实际的需求以及接收到的数据的类型对接收到的数据组织成对应的形式,以便于后续的操作流程。
根据本实施例的一个示例,该缓存模块可以将组织后的数据存储在浏览器的缓存中,其中的浏览器包括但不限于IE浏览器、火狐浏览器、谷歌浏览器、遨游浏览器等等。
其中上述第一判断单元及第二判断单元中的“第一”和“第二”的意义仅在于将两个判断单元加以区分,并不用于限定哪个判断单元的优先级更高或者其它的限定意义。
其中,该分页的实现装置中包括的各个模块可全部或部分通过软件、硬件或其组合来实现。进一步地,该分页的实现装置中的各个模块可以是用于实现对应功能的程序段。
本实施例提供的分页的实现装置通过向服务器端发送数据查询的关键字,指示服务器根据该关键字进行数据查询,并将查询到的数据尽可能多的一次性都发送给应用端,以使得应用端可以对接收到的所有数据进行排序,并将排序后的数据分页显示,使得用户在查询数据时,减少了应用端与对端服务器的交互次数,减少了服务器需要多次响应应用端的数据请求的响应时间,且用户在使用本实施例提供的分页的实现方法时,由于排序及分页步骤已经提前做好了,用户在点击下一页按钮进行页面切换时,***的响应时间会非常快,减少了用户的等待时间,提高了分页排序的效率。
上述分页的实现装置可以实现为一种计算机程序的形式,计算机程序可以在如图5所示的计算机设备上运行。
图5为根据本发明的一个实施例的计算机设备的内部结构示意图,该计算机设备可以为服务器。参照图5,该计算机设备包括通过***总线连接的处理器、非易失性存储介质、内存储器、输入装置、显示屏和网络接口。其中,该计算机设备的非易失性存储介质可存储操作***和计算机可读指令,该计算机可读指令被执行时,可使得处理器执行本申请各实施例的一种分页的实现方法,该方法的具体实现过程可参考图1至3各实施例的具体内容,在此不再赘述。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种分页的实现方法。计算机设备的输入装置用于各个参数的输入,计算机设备的显示屏用于进行显示,计算机设备的网络接口用于进行网络通信。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
如此处所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
本实施例另提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述分页的实现方法中的步骤。
根据本实施例的一个示例,上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机***的存储介质中,并被该计算机***中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。该存储介质包括但不限于磁碟、优盘、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
本实施例通过在接收到数据查询的关键字时,将该关键字发送给服务器,以供服务器根据该关键字进行数据查询,并将查询到的全部数据发送给应用端,应用端在接收数据时通过判断服务器端发送的数据的大小是否为在应用端的处理能力之内,若是,则接收服务器发来的全部数据并对接收的全部数据进行排序,然后再将在应用端进行全排后的数据进行分页显示,本方案通过在一次数据请求中接收尽可能多的数据并进行全排显示,一方面节省了多次数据请求的响应时间及用户的等待请求的时间,另一方面由于排序步骤是在应用端进行的,不需要服务器端对查询到的数据进行排序,降低了服务器端的负荷,提高了排序后分页显示的效率。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种分页的实现方法,其特征在于,应用于终端设备,所述方法包括:
接收到输入的数据查询的关键字时,将所述关键字发送给服务器;
接收所述服务器发送的数据,所述数据包括所述服务器根据所述关键字查询到的数据,当所述数据的大小在应用端的负荷范围之内时,所述数据包括所述服务器查询到的全部数据;
根据接收的排序规则,对接收到的全部数据按照所述排序规则进行排序;
获取在一个页面中显示的数据的预设的数量;
当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页;
所述当所述数据的大小在应用端的负荷范围之内时,所述数据包括所述服务器查询到的全部数据,包括:
当接收到所述服务器返回查询到的数据时,判断服务器端回发的数据的大小是否在应用端的负荷范围之内,若是,则接收服务器端返回的数据;当服务器端回发的数据的大小超过应用端的负荷范围时,拒绝接收服务器端发送的数据,或者向服务器端返回超负荷的信息,以使得服务器端将查询到的数据分段发送给本端;
或者,
预先在服务器端存储预存的与终端设备对应的最大负荷的数值,在服务器端在查询到满足要求的数据时,判断查询到的数据是否在对应的终端设备的最大负荷的范围之内,若是,则将查询到的数据一次性全部发送给对应的终端设备,否则,对查询到的数据进行分段。
2.根据权利要求1所述的方法,其特征在于,所述关键字包括数据的类型以及排序的依据,所述将所述关键字发送给服务器的步骤包括:
将所述数据的类型及排序依据发送给服务器;
所述接收所述服务器发送的数据的步骤中,所述数据包括所述服务器根据所述数据的类型查询到的且携带有所述排序依据的数据。
3.根据权利要求2所述方法,其特征在于,所述排序的依据包括所述数据的被访问量和/或最近一次被访问的时间。
4.根据权利要求1所述的方法,其特征在于,在所述接收所述服务器发送的数据的步骤之后,所述方法还包括:
将接收的数据组织成关键字值或数组或大对象;
将组织后的数据存储在缓存中。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述应用端的负荷范围为0M~10M。
6.一种分页的实现装置,其特征在于,应用于终端设备,所述装置包括:
关键字发送模块,用于接收到输入的数据查询的关键字时,将所述关键字发送给服务器;
数据接收模块,用于接收所述服务器发送的数据,所述数据包括所述服务器根据所述关键字查询到的数据,当所述数据的大小在应用端的负荷范围之内时,所述数据包括所述服务器查询到的全部数据;
排序模块,用于根据接收的排序规则,对接收到的全部数据按照所述排序规则进行排序;
数量获取模块,用于获取在一个页面中显示的数据的预设的数量;
分页模块,用于当预设的数量小于接收到的数据的数量时,对排序后的数据进行分页;
所述数据接收模块还包括第一判断单元;所述第一判断单元,用于当接收到所述服务器返回查询到的数据时,判断服务器端回发的数据的大小是否在应用端的负荷范围之内,若是,则接收服务器端返回的数据;当服务器端回发的数据的大小超过应用端的负荷范围时,拒绝接收服务器端发送的数据,或者向服务器端返回超负荷的信息,以使得服务器端将查询到的数据分段发送给应用端;
或者,
所述数据接收模块还包括预设模块和第二判断单元;所述预设模块,用于预先在服务器端存储预存的与终端设备对应的最大负荷的数值;所述第二判断单元,用于在服务器端在查询到满足要求的数据时,判断查询到的数据是否在对应的终端设备的最大负荷的范围之内,若是,则将查询到的数据一次性全部发送给对应的终端设备,否则,对查询到的数据进行分段。
7.根据权利要求6所述的装置,其特征在于,所述关键字包括数据的类型以及排序的依据,所述关键字发送模块具体用于:
将所述数据的类型及排序依据发送给服务器;
所述数据接收模块接收的数据包括所述服务器根据所述数据的类型查询到的且携带有所述排序依据的数据。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
组织模块,用于将接收的数据组织成关键字值或数组或大对象;
缓存模块,用于将组织后的数据存储在缓存中。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5中任一项的分页的实现方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至5任一项所述方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710752036.9A CN107679077B (zh) | 2017-08-28 | 2017-08-28 | 分页的实现方法、装置、计算机设备及存储介质 |
PCT/CN2017/107991 WO2019041500A1 (zh) | 2017-08-28 | 2017-10-27 | 分页的实现方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710752036.9A CN107679077B (zh) | 2017-08-28 | 2017-08-28 | 分页的实现方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107679077A CN107679077A (zh) | 2018-02-09 |
CN107679077B true CN107679077B (zh) | 2020-03-24 |
Family
ID=61134563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710752036.9A Active CN107679077B (zh) | 2017-08-28 | 2017-08-28 | 分页的实现方法、装置、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107679077B (zh) |
WO (1) | WO2019041500A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108509529A (zh) * | 2018-03-14 | 2018-09-07 | 武汉斗鱼网络科技有限公司 | 数据分页排序方法、装置及可读存储介质 |
CN108664304A (zh) * | 2018-05-03 | 2018-10-16 | 广州腾讯科技有限公司 | 应用程序处理方法、装置、存储介质和计算机设备 |
CN109885729B (zh) * | 2019-02-20 | 2021-07-20 | 北京奇艺世纪科技有限公司 | 一种显示数据的方法、装置及*** |
CN111026962B (zh) * | 2019-12-03 | 2023-09-22 | 泰康保险集团股份有限公司 | 层级关系查询响应时间降低方法、服务器和用户前端 |
CN112306604B (zh) * | 2020-08-21 | 2022-09-23 | 海信视像科技股份有限公司 | 一种传输文件的进度显示方法及显示设备 |
CN114238458A (zh) * | 2022-02-23 | 2022-03-25 | 国网北京市电力公司 | 数据查询方法、其装置及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000611A (zh) * | 2006-08-29 | 2007-07-18 | 曾文均 | 利用互联网为公众提供和查询信息的方法 |
CN101046807A (zh) * | 2006-03-31 | 2007-10-03 | 华为技术有限公司 | 存储数据已读的方法及装置 |
CN102591969A (zh) * | 2011-12-31 | 2012-07-18 | 北京百度网讯科技有限公司 | 基于用户历史行为提供搜索结果的方法及服务器 |
CN103678576A (zh) * | 2013-12-11 | 2014-03-26 | 华中师范大学 | 基于动态语义分析的全文检索*** |
CN104216902A (zh) * | 2013-05-31 | 2014-12-17 | 西门子公司 | 一种基于服务器分页的分页数据装载方法、装置和*** |
CN105468652A (zh) * | 2014-09-12 | 2016-04-06 | 北大方正集团有限公司 | 一种检索排序方法及*** |
CN106202411A (zh) * | 2016-07-11 | 2016-12-07 | 北京搜狗科技发展有限公司 | 一种搜索结果展示方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218443A (zh) * | 2013-04-22 | 2013-07-24 | 中山大学 | 一种面向博客网页的网页检索***及方法 |
CN104063523B (zh) * | 2014-07-21 | 2017-02-22 | 焦点科技股份有限公司 | 一种电子商务搜索评分与排名的方法及*** |
CN105760457A (zh) * | 2016-02-05 | 2016-07-13 | 成都康赛信息技术有限公司 | 一种基于MongoDB的数据分页优化方法 |
-
2017
- 2017-08-28 CN CN201710752036.9A patent/CN107679077B/zh active Active
- 2017-10-27 WO PCT/CN2017/107991 patent/WO2019041500A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101046807A (zh) * | 2006-03-31 | 2007-10-03 | 华为技术有限公司 | 存储数据已读的方法及装置 |
CN101000611A (zh) * | 2006-08-29 | 2007-07-18 | 曾文均 | 利用互联网为公众提供和查询信息的方法 |
CN102591969A (zh) * | 2011-12-31 | 2012-07-18 | 北京百度网讯科技有限公司 | 基于用户历史行为提供搜索结果的方法及服务器 |
CN104216902A (zh) * | 2013-05-31 | 2014-12-17 | 西门子公司 | 一种基于服务器分页的分页数据装载方法、装置和*** |
CN103678576A (zh) * | 2013-12-11 | 2014-03-26 | 华中师范大学 | 基于动态语义分析的全文检索*** |
CN105468652A (zh) * | 2014-09-12 | 2016-04-06 | 北大方正集团有限公司 | 一种检索排序方法及*** |
CN106202411A (zh) * | 2016-07-11 | 2016-12-07 | 北京搜狗科技发展有限公司 | 一种搜索结果展示方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107679077A (zh) | 2018-02-09 |
WO2019041500A1 (zh) | 2019-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107679077B (zh) | 分页的实现方法、装置、计算机设备及存储介质 | |
CN109492019B (zh) | 业务请求响应方法、装置、计算机设备和存储介质 | |
EP3036662B1 (en) | Generating cache query requests | |
CN108491450B (zh) | 数据缓存方法、装置、服务器和存储介质 | |
US20140298313A1 (en) | Method, server, client and system for updating data | |
CN103617241B (zh) | 搜索信息处理方法、浏览器终端与服务器 | |
CN110659092B (zh) | 网页截图方法、装置、计算机设备和存储介质 | |
CA3128540C (en) | Cache system hotspot data access method, apparatus, computer device and storage medium | |
CN109753421B (zh) | 服务***的优化方法、装置、计算机设备和存储介质 | |
CN108153847B (zh) | 一种列表分页方法、装置及电子设备 | |
CN105760395A (zh) | 一种数据处理的方法、装置及*** | |
CN107329976B (zh) | 网页分页方法、装置、计算机设备及计算机可读存储介质 | |
CN104536975A (zh) | 浏览器中进行图片信息处理的方法和浏览器客户端 | |
CN111090797A (zh) | 数据获取方法、装置、计算机设备和存储介质 | |
CN111190727A (zh) | 内存的异步析构方法、装置、计算机设备及存储介质 | |
CN112613271A (zh) | 数据分页方法、装置、计算机设备及存储介质 | |
CN111400578B (zh) | 货物数据查询方法、装置、计算机设备和存储介质 | |
CN108154024B (zh) | 一种数据检索方法、装置及电子设备 | |
CN112764948A (zh) | 数据发送方法、数据发送装置、计算机设备及存储介质 | |
CN112528098A (zh) | 一种数据查询方法、***、电子设备及存储介质 | |
CN110555165B (zh) | 信息识别方法、装置、计算机设备和存储介质 | |
CN109885729B (zh) | 一种显示数据的方法、装置及*** | |
CN113282354B (zh) | 应用程序的h5页面加载方法、装置、设备及存储介质 | |
CN111159131A (zh) | 性能优化方法、装置、设备及计算机可读存储介质 | |
CN106844406B (zh) | 检索方法和检索装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |