CN110209798A - 一种redis数据库的数据展示方法和装置 - Google Patents
一种redis数据库的数据展示方法和装置 Download PDFInfo
- Publication number
- CN110209798A CN110209798A CN201711407301.6A CN201711407301A CN110209798A CN 110209798 A CN110209798 A CN 110209798A CN 201711407301 A CN201711407301 A CN 201711407301A CN 110209798 A CN110209798 A CN 110209798A
- Authority
- CN
- China
- Prior art keywords
- data
- redis database
- page
- search
- instruction
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 230000001747 exhibiting effect Effects 0.000 title claims abstract description 13
- 230000004044 response Effects 0.000 claims abstract description 15
- 241001269238 Data Species 0.000 description 20
- 238000010586 diagram Methods 0.000 description 8
- 230000001965 increasing effect Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000001351 cycling effect Effects 0.000 description 4
- 235000013399 edible fruits Nutrition 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000008429 bread Nutrition 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种redis数据库的数据展示方法、装置、电子设备和计算机可读存储介质。该方法包括:设定浏览页面每页能够展示的数据的数量为N条;响应于浏览redis数据库中的数据的指令,从redis数据库获取数量大于或等于N条的数据;将所获取的数据保存至本地缓存中;从本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。通过本技术方案,将redis数据库中的数据,展示在用户的当前浏览页面,实现redis数据库中的数据展示,使得用户可以浏览到redis数据库中的数据,增强用户的使用体验。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种redis数据库的数据展示方法、装置、电子设备和计算机可读存储介质。
背景技术
redis是一个支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。现如今,redis数据库得到广泛的应用,然而,当用户将数据存储到redis数据库后,从redis数据库中浏览已存的数据是用户最基本的需求,因此,需要一种redis数据库的数据展示方案,以便用户进行redis数据库中数据的浏览。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的redis数据库的数据展示方法、装置、电子设备和计算机可读存储介质。
根据本发明的一个方面,提供了一种redis数据库的数据展示方法,其中,该方法包括:
设定浏览页面每页能够展示的数据的数量为N条;
响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据;
将所获取的数据保存至本地缓存中;
从所述本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
可选地,所述响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据包括:
响应于浏览redis数据库中的数据的指令,执行从所述redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;
若判断为否,则再次执行从所述redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从所述redis数据库获取数据的操作,直至从所述redis数据库获取的数据的总量大于或等于N。
可选地,该方法进一步包括:
当接收到进入下一页浏览页面的指令时,判断所述本地缓存中的未进行展示的数据量是否大于或等于N;
若判断为是,则直接从所述本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示;
若判断为否,则执行从所述redis数据库获取数据的操作,直至所述本地缓存中的未展示的数据量大于或等于N,然后从所述本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示;
其中,所述再次读取的数据与所述当前浏览页面展示的数据是连续的。
可选地,该方法进一步包括:
当接收到搜索数据的请求时,向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面。
可选地,所述向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面包括:
向所述redis数据库发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的对第一组M个数据的搜索结果,将所述redis数据库返回的第一组搜索结果展示在搜索结果页面;
向所述redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的第二组M个数据的搜索结果,在所述搜索结果页面的所述第一组搜索结果下方展示所述第二组搜索结果;
以此类推;
其中,所述第一组M个数据和所述第二组M个数据是连续的。
可选地,该方法进一步包括:
当接收到暂停或停止搜索的指令时,停止所述循环发送的搜索指令;
或者,接收到所述redis数据库对所述redis数据库中的所有数据搜索完毕的通知时,停止所述循环发送的搜索指令。
可选地,该方法进一步包括:
在所述搜索结果页面展示搜索进度条,以展示所述redis数据库的搜索进度。
可选地,该方法进一步包括:
接收新增数据的请求,根据所述请求将该条新增的数据在所述当前浏览页面进行展示,提供用户对该条新增的数据进行编辑的接口。
可选地,该方法进一步包括:
在展示该条新增的数据的那一行设置新增标记,以标识该行数据是新增数据。
可选地,该方法进一步包括:
当接收到提交新增数据的请求时,将该条新增的数据发送至所述redis数据库中,以便所述redis数据库中将该条新增的数据作为最后一条数据进行保存。
可选地,该方法进一步包括:
当接收到进入下一页浏览页面的指令时,在下一页浏览页面中展示该条新增的数据。
根据本发明的另一方面,提供了一种redis数据库的数据展示装置,其中,该装置包括:
设定单元,适于设定浏览页面每页能够展示的数据的数量为N条;
获取单元,适于响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据;
保存单元,适于将所获取的数据保存至本地缓存中;
读取展示单元,适于从所述本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
可选地,
所述获取单元,适于响应于浏览redis数据库中的数据的指令,执行从所述redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;
若判断为否,则再次执行从所述redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从所述redis数据库获取数据的操作,直至从所述redis数据库获取的数据的总量大于或等于N。
可选地,该装置进一步包括:
判断单元,适于当接收到进入下一页浏览页面的指令时,判断所述本地缓存中的未进行展示的数据量是否大于或等于N;
所述读取展示单元,适于若判断为是,从所述本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示;
所述获取单元,适于若判断为否,则执行从所述redis数据库获取数据的操作,直至所述本地缓存中的未展示的数据量大于或等于N;
所述读取展示单元,还适于当所述本地缓存中的未展示的数据量大于或等于N时,从所述本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示;
其中,所述再次读取的数据与所述当前浏览页面展示的数据是连续的。
可选地,该装置进一步包括:
搜索单元,适于当接收到搜索数据的请求时,向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面。
可选地,
所述搜索单元,适于向所述redis数据库发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的对第一组M个数据的搜索结果,将所述redis数据库返回的第一组搜索结果展示在搜索结果页面;
向所述redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的第二组M个数据的搜索结果,在所述搜索结果页面的所述第一组搜索结果下方展示所述第二组搜索结果;
以此类推;
其中,所述第一组M个数据和所述第二组M个数据是连续的。
可选地,
所述搜索单元,适于当接收到暂停或停止搜索的指令时,停止所述循环发送的搜索指令;
或者,接收到所述redis数据库对所述redis数据库中的所有数据搜索完毕的通知时,停止所述循环发送的搜索指令。
可选地,
所述搜索单元,适于在所述搜索结果页面展示搜索进度条,以展示所述redis数据库的搜索进度。
可选地,该装置进一步包括:
新增单元,适于接收新增数据的请求,根据所述请求将该条新增的数据在所述当前浏览页面进行展示,提供用户对该条新增的数据进行编辑的接口。
可选地,
所述新增单元,适于在展示该条新增的数据的那一行设置新增标记,以标识该行数据是新增数据。
可选地,
所述新增单元,还适于当接收到提交新增数据的请求时,将该条新增的数据发送至所述redis数据库中,以便所述redis数据库中将该条新增的数据作为最后一条数据进行保存。
可选地,
所述新增单元,还适于当接收到进入下一页浏览页面的指令时,在下一页浏览页面中展示该条新增的数据。
根据本发明的又一方面,提供了一种电子设备,其中,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据前述的方法。
根据本发明的再一方面,提供了一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现前述的方法。
根据本发明的技术方案,设定浏览页面每页能够展示的数据的数量为N条;响应于浏览redis数据库中的数据的指令,从redis数据库获取数量大于或等于N条的数据;将所获取的数据保存至本地缓存中;从本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。通过本技术方案,将redis数据库中的数据,展示在用户的当前浏览页面,实现redis数据库中的数据展示,使得用户可以浏览到redis数据库中的数据,增强用户的使用体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的redis数据库的数据展示方法的流程示意图;
图2示出了根据本发明一个实施例的redis数据库的数据展示装置的结构示意图;
图3示出了根据本发明一个实施例的电子设备的结构示意图;
图4示出了根据本发明一个实施例的计算机可读存储介质的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的redis数据库的数据展示方法的流程示意图。如图1所示,该方法包括:
步骤S110,设定浏览页面每页能够展示的数据的数量为N条。
在本实施例中,首先设定一个浏览页面展示的数据的数量,例如,一个浏览页面能够展示的数据的数量是50条。
步骤S120,响应于浏览redis数据库中的数据的指令,从redis数据库获取数量大于或等于N条的数据。
当用户想要浏览redis数据库中的数据时,会触发相应的浏览触发条件,例如,点击相应的浏览控件。当接收到浏览redis数据库中的数据的指令后,从redis数据库中获取数据,以便进行展示。因为设定的一个浏览页面能够展示的数据的数量是N,因此,为了使得一个浏览页面能够展示预设N条的数据,那么从redis数据库中获取的数据的数量要大于或等于N条。
步骤S130,将所获取的数据保存至本地缓存中。
在本实施例中,因为从redis数据库中获取的数据的数量可能会大于N条,但是一个浏览页面只能展示N条数据,所以,在从redis数据库中获取数据后,首先将获取的数据进行缓存,然后从缓存中获取N条数据进行展示即可。
步骤S140,从本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
可见,通过本实施例,将redis数据库中的数据,展示在用户的当前浏览页面,实现redis数据库中的数据展示,使得用户可以浏览到redis数据库中的数据,增强用户的使用体验。
在本发明的一个实施例中,步骤S120中的响应于浏览redis数据库中的数据的指令,从redis数据库获取数量大于或等于N条的数据包括:响应于浏览redis数据库中的数据的指令,执行从redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;若判断为否,则再次执行从redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从redis数据库获取数据的操作,直至从redis数据库获取的数据的总量大于或等于N。
每次从redis数据库获取的数据的数量是rsdis数据库中数据获取接口进行限定的,即在每执行一次从redis数据库获取数据的操作时,获取的数据的数量是一定的,例如,每次获取的数据数量是50条,因此,当执行完一次从redis数据库中获取数据的操作后,获取的数据的数量可能小于设定的浏览页面能够展示的数据数量。在本实施例中,为了保证从rsdis数据库中获取的数据的数量大于或等于浏览页面设定的能够展示的数据数量N,执行完一次从redis数据库获取数据的操作后,需要判断本次获取的数据的数量是否大于或等于N,如果第一次获取的数据的数量小于N,则再执行一个获取数据的操作,直至获取的数据的总量大于或等于N。例如,设定的N是60,执行一次从redis数据库获取的数据的数量是50条,则第一次获取数据后的50小于设定的60,需要再执行一次从redis数据库获取数据的操作,即再获取50条数据,那么两次获取的数据是100条,大于设定的60条,即可以停止从redis数据库获取数据的操作。
再者,虽然每次从redis数据库获取的数据的数量是rsdis数据库中数据获取接口进行限定的,例如,每次获取的数据数量是50条,但是在实际执行时,每次获取的数据的数量有可能小于限定值,例如49条,也有可能是大于限定值,例如51条,所以,即使将浏览页面能够展示的数据的数量与获取接口限定的数量一致,也有可能出现执行一次获取数据的操作也无法满足大于或等于设定的数据数量的情况。例如,每次获取的数据数量是50条,设定的浏览页面能够展示的数据的数量也是50条,执行一个从redis数据库中获取数据的操作后,获取的数据数量是49条,则需要再次执行从redis数据库中获取数据的操作;或者,执行一个从redis数据库中获取数据的操作后,获取的数据数量是51条,则可以停止从redis数据库获取数据的操作。
可见,通过本实施例,可以避免获取的数据的数量无法满足设定的浏览页面能够展示的数据数量的情况出现,进一步增强用户的使用体验。
在本发明的一个实施例中,图1所示的方法进一步包括:当接收到进入下一页浏览页面的指令时,判断本地缓存中的未进行展示的数据量是否大于或等于N;若判断为是,则直接从本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示;若判断为否,则执行从redis数据库获取数据的操作,直至本地缓存中的未展示的数据量大于或等于N,然后从本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示;其中,再次读取的数据与当前浏览页面展示的数据是连续的。
在本实施例中,可以实现redis数据库中的数据的分页展示,即用户可以分页浏览redis数据库中的数据,也就是说,当用户输入浏览数据的指令后,在当前的浏览页面中展示redis数据库中的50条数据,当用户点击下一页(例如点击当前浏览页面中的下一页控件)时,就会进入下一页的浏览页面,且下一页的浏览页面中展示的数据是下一50条数据。这里当前浏览页面的50条数据和下一页浏览页面的50条数据是连续的,例如,当前浏览页面的数据是1-50条,下一页浏览页面的数据是51-100条,防止数据展示的重复。
同时,在本实施例中,为了保证下一页的浏览页面的数据展示数量,在接收到进入下一页浏览页面的指令时,首先判断本地中的未进行展示的数据量是否大于等于N,是则,读取数据进行展示,否则,执行从redis数据库获取数据的操作,获取的步骤同上述说明,直至本地缓存中的数据数量大于或等于N即可。
另外,在本实施例中,是在接收到用户进入下一页的指令后,才实施本实施例,如果在未接收到进入下一页的指令时就进行数据的读取,则会出现用户不进入下一页浏览,则读取数据的过程浪费的情况。如果在接收到用户进入下一页的指令后,才实施本实施例,则可以节省资源,节省本地缓存的空间,避免做无用功。
在一个具体的例子中,设定的浏览页面能够展示的数据数量是50,用户触发浏览数据的指令,从redis数据库中获取一次数据,且本次获取的数据是1-48条,则再次从redis数据库中获取一次数据,获取了50条(即第49-98条),将98条数据保存至本地缓存,从本地缓存中读取1-50条数据在当前浏览页面进行展示。当用户触发进入下一页浏览页面的指令时,判断本地缓存中的未展示的数据是48条,小于50条,则从redis数据库中获取一次数据,获取了51条(即第99-149),保存至本地缓存中,这样,本地缓存中未展示的数据是99条,从本地缓存中读取第51-100条的数据展示在下一页浏览页面中。
在本技术方案中,不仅可以浏览redis数据库中的数据,还可以对redis数据库中的数据进行搜索。在本发明的一个实施例中,图1所示的方法进一步包括:当接收到搜索数据的请求时,向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面。
通常情况下,在redis数据库中进行数据搜索时,需要redis数据库遍历数据库中的所有数据进行搜索,然后再返回搜索结果,这样会导致搜索效率较慢,特别是针对数据量特别大的redis数据库,如果遍历所有数据进行搜索则会浪费较长的时间,降低用户的使用体验。
在本实施例中,当接收到搜索数据的请求时,向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令,以便redis数据库每次执行搜索时,只是在M条数据中进行搜索,当搜索完M条数据后就将搜索结果返回,这样就可以及时将搜索结果进行展示。例如,M是1000,redis数据库接收到搜索的指令,首先在1-1000条数据中搜索符合条件的数据,搜索完后将搜索结果返回,用户就可以在搜索界面浏览这1000条数据的搜索结果,如果用户不满意,就不会停止搜索,则redis数据库会再次从第1001-2000条数据中进行搜索,并将搜索结果返回,用户可以在搜索界面中浏览到1001-2000条数据中的搜索结果。
这里的接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面是指依次接收redis数据库返回的每N条数据的搜索结果,并且累计进行展示,在用户浏览的展示效果即是搜索结果页面不断的有搜索结果滚动累加。例如,1-1000条数据有3条结果,则搜索结果页面展示3条;1001-2000条数据有2条结果,则搜索结果页面展示的是5条数据。
进一步地,上述的向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面包括:
向redis数据库发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的对第一组M个数据的搜索结果,将redis数据库返回的第一组搜索结果展示在搜索结果页面;向redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的第二组M个数据的搜索结果,在搜索结果页面的第一组搜索结果下方展示第二组搜索结果;以此类推;其中,第一组M个数据和第二组M个数据是连续的。
在本实施例中,具体说明了如果向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;以及接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面。这里的在redis数据库中的M条数据中进行搜索的指令的循环发送的,只要没有停止搜索的指令,redis数据库没执行完一次,就会发送一次。
例如,向redis数据库发送在redis数据库中的1000条数据中进行搜索的指令;redis数据库对1-1000数据进行搜索后有3条搜索结果并返回,接收redis数据库返回的对1-1000数据进行搜索的3条搜索结果,将这3条搜索结果展示在搜索结果页面;然后,向redis数据库再次发送在redis数据库中的1000条数据中进行搜索的指令;redis数据库对1001-2000数据进行搜索后有5条搜索结果并返回,接收redis数据库返回的5跳搜索结果,在搜索结果页面的3条搜索结果下方展示5条搜索结果;以此类推;其中,第一组M个数据和第二组M个数据是连续的。
在redis数据库对1-1000数据进行搜索后会有一个游标标记,当redis数据库再次接受到搜索指令时,从游标标记处开始,再次对1000数据进行搜索。例如,对1-1000条数据搜索,并将搜索结果返回后,在1000条的位置设置一个游标标记,当再次接受到搜索指令时,从1001条开始进行1000条的搜索,即搜索1001-2000条数据。
进一步地,上述的方法进一步包括:当接收到暂停或停止搜索的指令时,停止循环发送的搜索指令;或者,接收到redis数据库对redis数据库中的所有数据搜索完毕的通知时,停止循环发送的搜索指令。
在本实施例中,如果没有停止搜索的指令,会一直向redis数据库发送搜索的指令。如果用户在已经搜索到的搜索结果中发现了自己所需要的搜索结果,则可以发送停止搜索的指令,这样就会停止循环发送的搜索指令,即redis数据库会停止搜索,或者用户可以暂停搜索,即暂停向redis数据库循环发送的搜索指令,当用户继续搜索时,则恢复向redis数据库循环发送的搜索指令。可见,通过本实施例,用户在进行搜索时可以随时暂停或停止搜索。
如果用户一直没有停止或暂停,会一直向redis数据库发送搜索的指令,直到redis数据库将所有的数据都遍历后,会返回所有数据搜索完毕的通知时,这时可以停止循环发送的搜索指令,搜索结束。优选的,可以在搜索结果页面进行搜索结束的提示。
为了便于用户知晓搜索的进度,在一个实施例中,上述的方法进一步包括:在搜索结果页面展示搜索进度条,以展示redis数据库的搜索进度。
需要说明的是,这里的搜索进度是基于redis数据中的所有数据来说的,不限定于循环发送的搜索指令,也就是说,当进度条显示50%时,是redis数据库完成了50%的数据的搜索,而非M条数据的50%的搜索。
本技术方案除了可以浏览数据,进行数据的搜索外,还支持redis数据库的新增。
在本发明的一个实施例中,图1所示的方法进一步包括:接收新增数据的请求,根据请求将该条新增的数据在当前浏览页面进行展示,提供用户对该条新增的数据进行编辑的接口。
通常情况下,用户在redis数据库中新增数据后,会将新增数据增添至所有数据的末尾,这样用户需要对新增的数据进行编辑时容易找不见新增的数据,或翻至数据库的最后才能进行编辑,用户操作繁琐,降低用户的使用体验。
在本实施例中,每当接收到新增数据的请求,根据请求将该条新增的数据在当前浏览页面进行展示,并且提供用户对该条新增的数据进行编辑的接口,以便用户对该新增数据进行编辑。
这里的将该条新增的数据在当前浏览页面进行展示,不限于浏览数据的页数,例如,当前用户正在浏览第5页的数据时,新增了一条数据,则将该条新增的数据添加到第5页中进行显示。例如,第5页浏览页面中浏览的数据是50条,当用户新增后,该第5页浏览页面的展示数据变为51条。
优选地,为了便于用户查找和编辑新增数据,将新增的数据显示在当前浏览页面的第一条数据的前一行中,即在当前浏览页面的第一行前面插入该条新增的数据。
进一步地,上述的方法进一步包括:
在展示该条新增的数据的那一行设置新增标记,以标识该行数据是新增数据,进一步便于用户获知新增数据的位置,增强用户的使用体验。
例如,在新增数据的那一行的最前端设置“星星”的标记。
进一步地,上述的方法进一步包括:当接收到提交新增数据的请求时,将该条新增的数据发送至redis数据库中,以便redis数据库中将该条新增的数据作为最后一条数据进行保存。
用户新增数据后,该条新增的数据中还没有实质性的数据内容,需要用户进行编辑才会真正将该数据添加至数据库中。即用户会通过提供的数据编辑接口进行新增数据的编辑,然后点击提交,才被认为是真正添加至数据库中。
在本实施例中,当接收到提交新增数据的请求时,将该条新增的数据发送至redis数据库中,这时,redis数据库中将该条新增的数据作为最后一条数据进行保存,有效的保证数据在被编辑提交的情况下入库。
进一步地,上述的方法进一步包括:当接收到进入下一页浏览页面的指令时,在下一页浏览页面中展示该条新增的数据。
在本实施例中,用户新增数据后,也可能进行下一页数据的浏览,所以,即使用户进入下一页浏览页面,新增的数据也会展示在下一页浏览页面中,不妨碍用户对该新增数据的编辑,进一步增强用户的使用体验。
例如,用户在第5页浏览页面时,进行新增数据的操作,该第5页浏览页面会展示的数据变为51条;当用户进入下一页后,即第6页后,新增的数据还会显示在第6页,即第6页会显示51条数据。
图2示出了根据本发明一个实施例的redis数据库的数据展示装置的结构示意图。如图2所示,该redis数据库的数据展示装置200包括:
设定单元210,适于设定浏览页面每页能够展示的数据的数量为N条。
在本实施例中,首先设定一个浏览页面展示的数据的数量,例如,一个浏览页面能够展示的数据的数量是50条。
获取单元220,适于响应于浏览redis数据库中的数据的指令,从redis数据库获取数量大于或等于N条的数据。
当用户想要浏览redis数据库中的数据时,会触发相应的浏览触发条件,例如,点击相应的浏览控件。当接收到浏览redis数据库中的数据的指令后,从redis数据库中获取数据,以便进行展示。因为设定的一个浏览页面能够展示的数据的数量是N,因此,为了使得一个浏览页面能够展示预设N条的数据,那么从redis数据库中获取的数据的数量要大于或等于N条。
保存单元230,适于将所获取的数据保存至本地缓存中。
在本实施例中,因为从redis数据库中获取的数据的数量可能会大于N条,但是一个浏览页面只能展示N条数据,所以,在从redis数据库中获取数据后,首先将获取的数据进行缓存,然后从缓存中获取N条数据进行展示即可。
读取展示单元240,适于从本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
可见,通过本实施例,将redis数据库中的数据,展示在用户的当前浏览页面,实现redis数据库中的数据展示,使得用户可以浏览到redis数据库中的数据,增强用户的使用体验。
在本发明的一个实施例中,获取单元220,适于响应于浏览redis数据库中的数据的指令,执行从redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;若判断为否,则再次执行从redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从redis数据库获取数据的操作,直至从redis数据库获取的数据的总量大于或等于N。
每次从redis数据库获取的数据的数量是rsdis数据库中数据获取接口进行限定的,即在每执行一次从redis数据库获取数据的操作时,获取的数据的数量是一定的,例如,每次获取的数据数量是50条,因此,当执行完一次从redis数据库中获取数据的操作后,获取的数据的数量可能小于设定的浏览页面能够展示的数据数量。在本实施例中,为了保证从rsdis数据库中获取的数据的数量大于或等于浏览页面设定的能够展示的数据数量N,执行完一次从redis数据库获取数据的操作后,需要判断本次获取的数据的数量是否大于或等于N,如果第一次获取的数据的数量小于N,则再执行一个获取数据的操作,直至获取的数据的总量大于或等于N。例如,设定的N是60,执行一次从redis数据库获取的数据的数量是50条,则第一次获取数据后的50小于设定的60,需要再执行一次从redis数据库获取数据的操作,即再获取50条数据,那么两次获取的数据是100条,大于设定的60条,即可以停止从redis数据库获取数据的操作。
再者,虽然每次从redis数据库获取的数据的数量是rsdis数据库中数据获取接口进行限定的,例如,每次获取的数据数量是50条,但是在实际执行时,每次获取的数据的数量有可能小于限定值,例如49条,也有可能是大于限定值,例如51条,所以,即使将浏览页面能够展示的数据的数量与获取接口限定的数量一致,也有可能出现执行一次获取数据的操作也无法满足大于或等于设定的数据数量的情况。例如,每次获取的数据数量是50条,设定的浏览页面能够展示的数据的数量也是50条,执行一个从redis数据库中获取数据的操作后,获取的数据数量是49条,则需要再次执行从redis数据库中获取数据的操作;或者,执行一个从redis数据库中获取数据的操作后,获取的数据数量是51条,则可以停止从redis数据库获取数据的操作。
可见,通过本实施例,可以避免获取的数据的数量无法满足设定的浏览页面能够展示的数据数量的情况出现,进一步增强用户的使用体验。
在本发明的一个实施例中,其中,图2所示的装置进一步包括:
判断单元,适于当接收到进入下一页浏览页面的指令时,判断本地缓存中的未进行展示的数据量是否大于或等于N。
读取展示单元240,适于若判断为是,从本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示。
获取单元220,适于若判断为否,则执行从redis数据库获取数据的操作,直至本地缓存中的未展示的数据量大于或等于N。
读取展示单元240,还适于当本地缓存中的未展示的数据量大于或等于N时,从本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示。
其中,再次读取的数据与当前浏览页面展示的数据是连续的。
在本实施例中,可以实现redis数据库中的数据的分页展示,即用户可以分页浏览redis数据库中的数据,也就是说,当用户输入浏览数据的指令后,在当前的浏览页面中展示redis数据库中的50条数据,当用户点击下一页(例如点击当前浏览页面中的下一页控件)时,就会进入下一页的浏览页面,且下一页的浏览页面中展示的数据是下一50条数据。这里当前浏览页面的50条数据和下一页浏览页面的50条数据是连续的,例如,当前浏览页面的数据是1-50条,下一页浏览页面的数据是51-100条,防止数据展示的重复。
同时,在本实施例中,为了保证下一页的浏览页面的数据展示数量,在接收到进入下一页浏览页面的指令时,首先判断本地中的未进行展示的数据量是否大于等于N,是则,读取数据进行展示,否则,执行从redis数据库获取数据的操作,获取的步骤同上述说明,直至本地缓存中的数据数量大于或等于N即可。
另外,在本实施例中,是在接收到用户进入下一页的指令后,才实施本实施例,如果在未接收到进入下一页的指令时就进行数据的读取,则会出现用户不进入下一页浏览,则读取数据的过程浪费的情况。如果在接收到用户进入下一页的指令后,才实施本实施例,则可以节省资源,节省本地缓存的空间,避免做无用功。
在一个具体的例子中,设定的浏览页面能够展示的数据数量是50,用户触发浏览数据的指令,从redis数据库中获取一次数据,且本次获取的数据是1-48条,则再次从redis数据库中获取一次数据,获取了50条(即第49-98条),将98条数据保存至本地缓存,从本地缓存中读取1-50条数据在当前浏览页面进行展示。当用户触发进入下一页浏览页面的指令时,判断本地缓存中的未展示的数据是48条,小于50条,则从redis数据库中获取一次数据,获取了51条(即第99-149),保存至本地缓存中,这样,本地缓存中未展示的数据是99条,从本地缓存中读取第51-100条的数据展示在下一页浏览页面中。
在本技术方案中,不仅可以浏览redis数据库中的数据,还可以对redis数据库中的数据进行搜索。在本发明的一个实施例中,图2所示的装置进一步包括:
搜索单元,适于当接收到搜索数据的请求时,向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面。
通常情况下,在redis数据库中进行数据搜索时,需要redis数据库遍历数据库中的所有数据进行搜索,然后再返回搜索结果,这样会导致搜索效率较慢,特别是针对数据量特别大的redis数据库,如果遍历所有数据进行搜索则会浪费较长的时间,降低用户的使用体验。
在本实施例中,当接收到搜索数据的请求时,向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令,以便redis数据库每次执行搜索时,只是在M条数据中进行搜索,当搜索完M条数据后就将搜索结果返回,这样就可以及时将搜索结果进行展示。例如,M是1000,redis数据库接收到搜索的指令,首先在1-1000条数据中搜索符合条件的数据,搜索完后将搜索结果返回,用户就可以在搜索界面浏览这1000条数据的搜索结果,如果用户不满意,就不会停止搜索,则redis数据库会再次从第1001-2000条数据中进行搜索,并将搜索结果返回,用户可以在搜索界面中浏览到1001-2000条数据中的搜索结果。
这里的接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面是指依次接收redis数据库返回的每N条数据的搜索结果,并且累计进行展示,在用户浏览的展示效果即是搜索结果页面不断的有搜索结果滚动累加。例如,1-1000条数据有3条结果,则搜索结果页面展示3条;1001-2000条数据有2条结果,则搜索结果页面展示的是5条数据。
进一步地,搜索单元,适于向redis数据库发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的对第一组M个数据的搜索结果,将redis数据库返回的第一组搜索结果展示在搜索结果页面;向redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;接收redis数据库返回的第二组M个数据的搜索结果,在搜索结果页面的第一组搜索结果下方展示第二组搜索结果;以此类推;其中,第一组M个数据和第二组M个数据是连续的。
在本实施例中,具体说明了如果向redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;以及接收redis数据库返回的搜索结果,将搜索结果展示在搜索结果页面。这里的在redis数据库中的M条数据中进行搜索的指令的循环发送的,只要没有停止搜索的指令,redis数据库没执行完一次,就会发送一次。
例如,向redis数据库发送在redis数据库中的1000条数据中进行搜索的指令;redis数据库对1-1000数据进行搜索后有3条搜索结果并返回,接收redis数据库返回的对1-1000数据进行搜索的3条搜索结果,将这3条搜索结果展示在搜索结果页面;然后,向redis数据库再次发送在redis数据库中的1000条数据中进行搜索的指令;redis数据库对1001-2000数据进行搜索后有5条搜索结果并返回,接收redis数据库返回的5跳搜索结果,在搜索结果页面的3条搜索结果下方展示5条搜索结果;以此类推;其中,第一组M个数据和第二组M个数据是连续的。
在redis数据库对1-1000数据进行搜索后会有一个游标标记,当redis数据库再次接受到搜索指令时,从游标标记处开始,再次对1000数据进行搜索。例如,对1-1000条数据搜索,并将搜索结果返回后,在1000条的位置设置一个游标标记,当再次接受到搜索指令时,从1001条开始进行1000条的搜索,即搜索1001-2000条数据。
进一步地,搜索单元,适于当接收到暂停或停止搜索的指令时,停止循环发送的搜索指令;或者,接收到redis数据库对redis数据库中的所有数据搜索完毕的通知时,停止循环发送的搜索指令。
在本实施例中,如果没有停止搜索的指令,会一直向redis数据库发送搜索的指令。如果用户在已经搜索到的搜索结果中发现了自己所需要的搜索结果,则可以发送停止搜索的指令,这样就会停止循环发送的搜索指令,即redis数据库会停止搜索,或者用户可以暂停搜索,即暂停向redis数据库循环发送的搜索指令,当用户继续搜索时,则恢复向redis数据库循环发送的搜索指令。可见,通过本实施例,用户在进行搜索时可以随时暂停或停止搜索。
如果用户一直没有停止或暂停,会一直向redis数据库发送搜索的指令,直到redis数据库将所有的数据都遍历后,会返回所有数据搜索完毕的通知时,这时可以停止循环发送的搜索指令,搜索结束。优选的,可以在搜索结果页面进行搜索结束的提示。
为了便于用户知晓搜索的进度,在一个实施例中,搜索单元,适于在搜索结果页面展示搜索进度条,以展示redis数据库的搜索进度。
需要说明的是,这里的搜索进度是基于redis数据中的所有数据来说的,不限定于循环发送的搜索指令,也就是说,当进度条显示50%时,是redis数据库完成了50%的数据的搜索,而非M条数据的50%的搜索。
本技术方案除了可以浏览数据,进行数据的搜索外,还支持redis数据库的新增。
在本发明的一个实施例中,图2所示的装置进一步包括:
新增单元,适于接收新增数据的请求,根据请求将该条新增的数据在当前浏览页面进行展示,提供用户对该条新增的数据进行编辑的接口。
通常情况下,用户在redis数据库中新增数据后,会将新增数据增添至所有数据的末尾,这样用户需要对新增的数据进行编辑时容易找不见新增的数据,或翻至数据库的最后才能进行编辑,用户操作繁琐,降低用户的使用体验。
在本实施例中,每当接收到新增数据的请求,根据请求将该条新增的数据在当前浏览页面进行展示,并且提供用户对该条新增的数据进行编辑的接口,以便用户对该新增数据进行编辑。
这里的将该条新增的数据在当前浏览页面进行展示,不限于浏览数据的页数,例如,当前用户正在浏览第5页的数据时,新增了一条数据,则将该条新增的数据添加到第5页中进行显示。例如,第5页浏览页面中浏览的数据是50条,当用户新增后,该第5页浏览页面的展示数据变为51条。
优选地,为了便于用户查找和编辑新增数据,将新增的数据显示在当前浏览页面的第一条数据的前一行中,即在当前浏览页面的第一行前面插入该条新增的数据。
进一步地,新增单元,适于在展示该条新增的数据的那一行设置新增标记,以标识该行数据是新增数据,,进一步便于用户获知新增数据的位置,增强用户的使用体验。
例如,在新增数据的那一行的最前端设置“星星”的标记。
进一步地,新增单元,还适于当接收到提交新增数据的请求时,将该条新增的数据发送至redis数据库中,以便redis数据库中将该条新增的数据作为最后一条数据进行保存。
用户新增数据后,该条新增的数据中还没有实质性的数据内容,需要用户进行编辑才会真正将该数据添加至数据库中。即用户会通过提供的数据编辑接口进行新增数据的编辑,然后点击提交,才被认为是真正添加至数据库中。
在本实施例中,当接收到提交新增数据的请求时,将该条新增的数据发送至redis数据库中,这时,redis数据库中将该条新增的数据作为最后一条数据进行保存,有效的保证数据在被编辑提交的情况下入库。
进一步地,新增单元,还适于当接收到进入下一页浏览页面的指令时,在下一页浏览页面中展示该条新增的数据。
在本实施例中,用户新增数据后,也可能进行下一页数据的浏览,所以,即使用户进入下一页浏览页面,新增的数据也会展示在下一页浏览页面中,不妨碍用户对该新增数据的编辑,进一步增强用户的使用体验。
例如,用户在第5页浏览页面时,进行新增数据的操作,该第5页浏览页面会展示的数据变为51条;当用户进入下一页后,即第6页后,新增的数据还会显示在第6页,即第6页会显示51条数据。
本发明还提供了一种电子设备,其中,该电子设备包括:
处理器;以及,
被安排成存储计算机可执行指令的存储器,可执行指令在被执行时使处理器执行根据图1所示的及其各实施例中的redis数据库的数据展示方法。
图3示出了根据本发明一个实施例的电子设备的功能结构示意图。如图3所示,该电子设备300包括:
处理器310;以及被安排成存储计算机可执行指令(程序代码)的存储器320,在存储器320中,有存储程序代码的存储空间330,用于执行根据本发明的方法步骤的程序代码340存储在存储空间330中,该程序代码在被执行时使处理器310执行根据图1所示的及其各实施例中的redis数据库的数据展示方法。
图4示出了根据本发明一个实施例的一种计算机可读存储介质的结构示意图。如图4所示,该计算机可读存储介质400存储一个或多个程序(程序代码)410,一个或多个程序(程序代码)410当被处理器执行时,实现图1所示的及其各实施例中的redis数据库的数据展示方法。
需要说明的是,图3所示的电子设备和图4所示的计算机可读存储介质的各实施例与图1所示的方法的各实施例对应相同,上文已有详细说明,在此不再赘述。
综上所述,根据本发明的技术方案,设定浏览页面每页能够展示的数据的数量为N条;响应于浏览redis数据库中的数据的指令,从redis数据库获取数量大于或等于N条的数据;将所获取的数据保存至本地缓存中;从本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。通过本技术方案,将redis数据库中的数据,展示在用户的当前浏览页面,实现redis数据库中的数据展示,使得用户可以浏览到redis数据库中的数据,增强用户的使用体验。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的redis数据库的数据展示装置、电子设备和计算机可读存储介质中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图3示出了根据本发明一个实施例的电子设备的结构示意图。该电子设备300传统上包括处理器310和被安排成存储计算机可执行指令(程序代码)的存储器320。存储器320可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器320具有存储用于执行图1所示的以及各实施例中的任何方法步骤的程序代码340的存储空间330。例如,用于程序代码的存储空间330可以包括分别用于实现上面的方法中的各种步骤的各个程序代码340。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图4的计算机可读存储介质400。该计算机可读存储介质400可以具有与图3的电子设备中的存储器320类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元存储有用于执行根据本发明的方法步骤的程序代码410,即可以由诸如310之类的处理器读取的程序代码,当这些程序代码由电子设备运行时,导致该电子设备执行上面所描述的方法中的各个步骤。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种redis数据库的数据展示方法,其中,该方法包括:
设定浏览页面每页能够展示的数据的数量为N条;
响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据;
将所获取的数据保存至本地缓存中;
从所述本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
A2、如A1所述的方法,其中,所述响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据包括:
响应于浏览redis数据库中的数据的指令,执行从所述redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;
若判断为否,则再次执行从所述redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从所述redis数据库获取数据的操作,直至从所述redis数据库获取的数据的总量大于或等于N。
A3、如A1所述的方法,其中,该方法进一步包括:
当接收到进入下一页浏览页面的指令时,判断所述本地缓存中的未进行展示的数据量是否大于或等于N;
若判断为是,则直接从所述本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示;
若判断为否,则执行从所述redis数据库获取数据的操作,直至所述本地缓存中的未展示的数据量大于或等于N,然后从所述本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示;
其中,所述再次读取的数据与所述当前浏览页面展示的数据是连续的。
A4、如A1所述的方法,其中,该方法进一步包括:
当接收到搜索数据的请求时,向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面。
A5、如A4所述的方法,其中,所述向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面包括:
向所述redis数据库发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的对第一组M个数据的搜索结果,将所述redis数据库返回的第一组搜索结果展示在搜索结果页面;
向所述redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的第二组M个数据的搜索结果,在所述搜索结果页面的所述第一组搜索结果下方展示所述第二组搜索结果;
以此类推;
其中,所述第一组M个数据和所述第二组M个数据是连续的。
A6、如A4所述的方法,其中,该方法进一步包括:
当接收到暂停或停止搜索的指令时,停止所述循环发送的搜索指令;
或者,接收到所述redis数据库对所述redis数据库中的所有数据搜索完毕的通知时,停止所述循环发送的搜索指令。
A7、如A4所述的方法,其中,该方法进一步包括:
在所述搜索结果页面展示搜索进度条,以展示所述redis数据库的搜索进度。
A8、如A1所述的方法,其中,该方法进一步包括:
接收新增数据的请求,根据所述请求将该条新增的数据在所述当前浏览页面进行展示,提供用户对该条新增的数据进行编辑的接口。
A9、如A8所述的方法,其中,该方法进一步包括:
在展示该条新增的数据的那一行设置新增标记,以标识该行数据是新增数据。
A10、如A8所述的方法,其中,该方法进一步包括:
当接收到提交新增数据的请求时,将该条新增的数据发送至所述redis数据库中,以便所述redis数据库中将该条新增的数据作为最后一条数据进行保存。
A11、如A8所述的方法,其中,该方法进一步包括:
当接收到进入下一页浏览页面的指令时,在下一页浏览页面中展示该条新增的数据。
本发明还公开了B12、一种redis数据库的数据展示装置,其中,该装置包括:
设定单元,适于设定浏览页面每页能够展示的数据的数量为N条;
获取单元,适于响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据;
保存单元,适于将所获取的数据保存至本地缓存中;
读取展示单元,适于从所述本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
B13、如B12所述的装置,其中,
所述获取单元,适于响应于浏览redis数据库中的数据的指令,执行从所述redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;
若判断为否,则再次执行从所述redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从所述redis数据库获取数据的操作,直至从所述redis数据库获取的数据的总量大于或等于N。
B14、如B12所述的装置,其中,该装置进一步包括:
判断单元,适于当接收到进入下一页浏览页面的指令时,判断所述本地缓存中的未进行展示的数据量是否大于或等于N;
所述读取展示单元,适于若判断为是,从所述本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示;
所述获取单元,适于若判断为否,则执行从所述redis数据库获取数据的操作,直至所述本地缓存中的未展示的数据量大于或等于N;
所述读取展示单元,还适于当所述本地缓存中的未展示的数据量大于或等于N时,从所述本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示;
其中,所述再次读取的数据与所述当前浏览页面展示的数据是连续的。
B15、如B12所述的装置,其中,该装置进一步包括:
搜索单元,适于当接收到搜索数据的请求时,向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面。
B16、如B15所述的装置,其中,
所述搜索单元,适于向所述redis数据库发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的对第一组M个数据的搜索结果,将所述redis数据库返回的第一组搜索结果展示在搜索结果页面;
向所述redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的第二组M个数据的搜索结果,在所述搜索结果页面的所述第一组搜索结果下方展示所述第二组搜索结果;
以此类推;
其中,所述第一组M个数据和所述第二组M个数据是连续的。
B17、如B15所述的装置,其中,
所述搜索单元,适于当接收到暂停或停止搜索的指令时,停止所述循环发送的搜索指令;
或者,接收到所述redis数据库对所述redis数据库中的所有数据搜索完毕的通知时,停止所述循环发送的搜索指令。
B18、如B15所述的装置,其中,
所述搜索单元,适于在所述搜索结果页面展示搜索进度条,以展示所述redis数据库的搜索进度。
B19、如B12所述的装置,其中,该装置进一步包括:
新增单元,适于接收新增数据的请求,根据所述请求将该条新增的数据在所述当前浏览页面进行展示,提供用户对该条新增的数据进行编辑的接口。
B20、如B19所述的装置,其中,
所述新增单元,适于在展示该条新增的数据的那一行设置新增标记,以标识该行数据是新增数据。
B21、如B19所述的装置,其中,
所述新增单元,还适于当接收到提交新增数据的请求时,将该条新增的数据发送至所述redis数据库中,以便所述redis数据库中将该条新增的数据作为最后一条数据进行保存。
B22、如B19所述的装置,其中,
所述新增单元,还适于当接收到进入下一页浏览页面的指令时,在下一页浏览页面中展示该条新增的数据。
本发明还公开了C23、一种电子设备,其中,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据A1~A11中任一项所述的方法。
本发明还公开了D24、一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现A1~A11中任一项所述的方法。
Claims (10)
1.一种redis数据库的数据展示方法,其中,该方法包括:
设定浏览页面每页能够展示的数据的数量为N条;
响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据;
将所获取的数据保存至本地缓存中;
从所述本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
2.如权利要求1所述的方法,其中,所述响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据包括:
响应于浏览redis数据库中的数据的指令,执行从所述redis数据库获取数据的操作,判断本次获取的数据的数量是否大于或等于N;
若判断为否,则再次执行从所述redis数据库获取数据的操作,判断两次获取的数据的总量是否大于或等于N;若判断为否,则再次执行从所述redis数据库获取数据的操作,直至从所述redis数据库获取的数据的总量大于或等于N。
3.如权利要求1所述的方法,其中,该方法进一步包括:
当接收到进入下一页浏览页面的指令时,判断所述本地缓存中的未进行展示的数据量是否大于或等于N;
若判断为是,则直接从所述本地缓存中再次读取N条数据,将再次读取的N条数据在下一页浏览页面进行展示;
若判断为否,则执行从所述redis数据库获取数据的操作,直至所述本地缓存中的未展示的数据量大于或等于N,然后从所述本地缓存中读取N条数据,将所读取的N条数据在下一页浏览页面进行展示;
其中,所述再次读取的数据与所述当前浏览页面展示的数据是连续的。
4.如权利要求1所述的方法,其中,该方法进一步包括:
当接收到搜索数据的请求时,向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面。
5.如权利要求4所述的方法,其中,所述向所述redis数据库循环发送在redis数据库中的M条数据中进行搜索的指令;接收所述redis数据库返回的搜索结果,将所述搜索结果展示在搜索结果页面包括:
向所述redis数据库发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的对第一组M个数据的搜索结果,将所述redis数据库返回的第一组搜索结果展示在搜索结果页面;
向所述redis数据库再次发送在redis数据库中的M条数据中进行搜索的指令;
接收所述redis数据库返回的第二组M个数据的搜索结果,在所述搜索结果页面的所述第一组搜索结果下方展示所述第二组搜索结果;
以此类推;
其中,所述第一组M个数据和所述第二组M个数据是连续的。
6.如权利要求4所述的方法,其中,该方法进一步包括:
当接收到暂停或停止搜索的指令时,停止所述循环发送的搜索指令;
或者,接收到所述redis数据库对所述redis数据库中的所有数据搜索完毕的通知时,停止所述循环发送的搜索指令。
7.如权利要求4所述的方法,其中,该方法进一步包括:
在所述搜索结果页面展示搜索进度条,以展示所述redis数据库的搜索进度。
8.一种redis数据库的数据展示装置,其中,该装置包括:
设定单元,适于设定浏览页面每页能够展示的数据的数量为N条;
获取单元,适于响应于浏览redis数据库中的数据的指令,从所述redis数据库获取数量大于或等于N条的数据;
保存单元,适于将所获取的数据保存至本地缓存中;
读取展示单元,适于从所述本地缓存中读取N条数据,将所读取的N条数据在当前浏览页面进行展示。
9.一种电子设备,其中,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据权利要求1~7中任一项所述的方法。
10.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现权利要求1~7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711407301.6A CN110209798B (zh) | 2017-12-22 | 2017-12-22 | 一种redis数据库的数据展示方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711407301.6A CN110209798B (zh) | 2017-12-22 | 2017-12-22 | 一种redis数据库的数据展示方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110209798A true CN110209798A (zh) | 2019-09-06 |
CN110209798B CN110209798B (zh) | 2024-05-10 |
Family
ID=67778584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711407301.6A Active CN110209798B (zh) | 2017-12-22 | 2017-12-22 | 一种redis数据库的数据展示方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110209798B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026964A (zh) * | 2019-12-04 | 2020-04-17 | 掌阅科技股份有限公司 | 榜单页面的展示方法、电子设备及计算机存储介质 |
CN112667682A (zh) * | 2020-12-22 | 2021-04-16 | 杭州贝嘟科技有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN112765221A (zh) * | 2021-02-27 | 2021-05-07 | 中电万维信息技术有限责任公司 | 一种基于redis高速缓存的数据检索方法 |
CN114925103A (zh) * | 2022-07-20 | 2022-08-19 | 威海海洋职业学院 | 一种缓存式会计数据生成方法及系统 |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060155689A1 (en) * | 2004-07-23 | 2006-07-13 | Oracle International Corporation | Web-based user interface for searching metadata-driven relational databases |
CN101149738A (zh) * | 2007-06-06 | 2008-03-26 | 中兴通讯股份有限公司 | 一种利用定长字段优化迭代查询的方法 |
CN101470870A (zh) * | 2008-05-27 | 2009-07-01 | 北京奥腾讯达科技有限公司 | 基于库存数据的远程企业经营管理系统 |
CN101523393A (zh) * | 2006-10-06 | 2009-09-02 | 微软公司 | 本地存储基于web的数据库数据 |
CN102411585A (zh) * | 2010-09-21 | 2012-04-11 | 厦门市美亚柏科信息股份有限公司 | 一种网页分页数据预加载方法和系统 |
CN103034730A (zh) * | 2012-12-21 | 2013-04-10 | 厦门市美亚柏科信息股份有限公司 | 一种基于安卓平台的数据处理方法和系统 |
CN103559227A (zh) * | 2013-10-22 | 2014-02-05 | 北京奇虎科技有限公司 | 显示网页的方法及浏览器 |
CN103854113A (zh) * | 2012-11-29 | 2014-06-11 | 瀚科科技(大连)有限公司 | 机务管理系统通用方法 |
EP2741195A1 (en) * | 2012-12-07 | 2014-06-11 | BlackBerry Limited | Methods and devices for scrolling a display page |
CN103927368A (zh) * | 2014-04-22 | 2014-07-16 | 浪潮软件股份有限公司 | 一种轻量级架构的利用流数据概念生成热力图的方法 |
CN104077293A (zh) * | 2013-03-27 | 2014-10-01 | 腾讯科技(深圳)有限公司 | 网页获取方法和装置 |
CN104850627A (zh) * | 2015-05-21 | 2015-08-19 | 北京京东尚科信息技术有限公司 | 进行分页展示的方法及装置 |
CN105447174A (zh) * | 2015-12-09 | 2016-03-30 | 中国农业银行股份有限公司 | 一种报表生成方法及装置 |
CN105550346A (zh) * | 2015-12-25 | 2016-05-04 | 北京奇虎科技有限公司 | 信息管理方法及设备 |
CN105867750A (zh) * | 2016-03-31 | 2016-08-17 | 郑州悉知信息科技股份有限公司 | 一种列表显示方法及装置 |
CN106202115A (zh) * | 2015-05-07 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 一种定向显示信息方法及装置 |
US20170046023A1 (en) * | 2015-08-14 | 2017-02-16 | Samsung Electronics Co., Ltd. | Method and apparatus for processing managing multimedia content |
CN106445927A (zh) * | 2015-08-04 | 2017-02-22 | 北京京东金融科技控股有限公司 | 数据分页查询方法及装置 |
CN106844705A (zh) * | 2017-02-06 | 2017-06-13 | 百度在线网络技术(北京)有限公司 | 用于显示多媒体内容的方法和装置 |
CN107133044A (zh) * | 2017-05-05 | 2017-09-05 | 上海携程商务有限公司 | 数据维护型页面的快速开发方法和系统 |
US20170286491A1 (en) * | 2016-03-30 | 2017-10-05 | Linkedin Corporation | Local search of non-local search results |
-
2017
- 2017-12-22 CN CN201711407301.6A patent/CN110209798B/zh active Active
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060155689A1 (en) * | 2004-07-23 | 2006-07-13 | Oracle International Corporation | Web-based user interface for searching metadata-driven relational databases |
CN101523393A (zh) * | 2006-10-06 | 2009-09-02 | 微软公司 | 本地存储基于web的数据库数据 |
CN101149738A (zh) * | 2007-06-06 | 2008-03-26 | 中兴通讯股份有限公司 | 一种利用定长字段优化迭代查询的方法 |
CN101470870A (zh) * | 2008-05-27 | 2009-07-01 | 北京奥腾讯达科技有限公司 | 基于库存数据的远程企业经营管理系统 |
CN102411585A (zh) * | 2010-09-21 | 2012-04-11 | 厦门市美亚柏科信息股份有限公司 | 一种网页分页数据预加载方法和系统 |
CN103854113A (zh) * | 2012-11-29 | 2014-06-11 | 瀚科科技(大连)有限公司 | 机务管理系统通用方法 |
EP2741195A1 (en) * | 2012-12-07 | 2014-06-11 | BlackBerry Limited | Methods and devices for scrolling a display page |
CN103034730A (zh) * | 2012-12-21 | 2013-04-10 | 厦门市美亚柏科信息股份有限公司 | 一种基于安卓平台的数据处理方法和系统 |
CN104077293A (zh) * | 2013-03-27 | 2014-10-01 | 腾讯科技(深圳)有限公司 | 网页获取方法和装置 |
CN103559227A (zh) * | 2013-10-22 | 2014-02-05 | 北京奇虎科技有限公司 | 显示网页的方法及浏览器 |
CN103927368A (zh) * | 2014-04-22 | 2014-07-16 | 浪潮软件股份有限公司 | 一种轻量级架构的利用流数据概念生成热力图的方法 |
CN106202115A (zh) * | 2015-05-07 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 一种定向显示信息方法及装置 |
CN104850627A (zh) * | 2015-05-21 | 2015-08-19 | 北京京东尚科信息技术有限公司 | 进行分页展示的方法及装置 |
CN106445927A (zh) * | 2015-08-04 | 2017-02-22 | 北京京东金融科技控股有限公司 | 数据分页查询方法及装置 |
US20170046023A1 (en) * | 2015-08-14 | 2017-02-16 | Samsung Electronics Co., Ltd. | Method and apparatus for processing managing multimedia content |
CN105447174A (zh) * | 2015-12-09 | 2016-03-30 | 中国农业银行股份有限公司 | 一种报表生成方法及装置 |
CN105550346A (zh) * | 2015-12-25 | 2016-05-04 | 北京奇虎科技有限公司 | 信息管理方法及设备 |
US20170286491A1 (en) * | 2016-03-30 | 2017-10-05 | Linkedin Corporation | Local search of non-local search results |
CN105867750A (zh) * | 2016-03-31 | 2016-08-17 | 郑州悉知信息科技股份有限公司 | 一种列表显示方法及装置 |
CN106844705A (zh) * | 2017-02-06 | 2017-06-13 | 百度在线网络技术(北京)有限公司 | 用于显示多媒体内容的方法和装置 |
CN107133044A (zh) * | 2017-05-05 | 2017-09-05 | 上海携程商务有限公司 | 数据维护型页面的快速开发方法和系统 |
Non-Patent Citations (7)
Title |
---|
刘栋梁, 缪景皓, 任建国, 张世永: "浏览器的直接多视图显示方法", 计算机工程, no. 11, 20 November 2000 (2000-11-20), pages 112 - 113 * |
张文婧;: "高职院校图书馆动态网站后台数据库连接与实践", 通讯世界, no. 15, 12 August 2017 (2017-08-12), pages 273 - 274 * |
王博;任涛;: "Web数据库分页浏览方法性能分析", 现代电子技术, no. 10, pages 85 - 87 * |
肖元缜;朱明;苏厚勤;徐畅;: "Redis MMDB在城市垃圾清运监管系统中的研究与应用", 计算机应用与软件, no. 05, pages 100 - 103 * |
范后军;魏慧琴;: "基于J2EE多层架构中Web层对数据库访问的优化", 铁路计算机应用, no. 02, pages 6 - 9 * |
许艳丽, 梁广胜, 杨志英: "利用ASP实现网络数据库分页浏览式修改", 聊城师院学报(自然科学版), no. 03 * |
陶延涛: "基于WEB页的数据库记录显示", 硅谷, no. 21, 18 November 2010 (2010-11-18), pages 195 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026964A (zh) * | 2019-12-04 | 2020-04-17 | 掌阅科技股份有限公司 | 榜单页面的展示方法、电子设备及计算机存储介质 |
CN111026964B (zh) * | 2019-12-04 | 2023-04-21 | 掌阅科技股份有限公司 | 榜单页面的展示方法、电子设备及计算机存储介质 |
CN112667682A (zh) * | 2020-12-22 | 2021-04-16 | 杭州贝嘟科技有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN112765221A (zh) * | 2021-02-27 | 2021-05-07 | 中电万维信息技术有限责任公司 | 一种基于redis高速缓存的数据检索方法 |
CN114925103A (zh) * | 2022-07-20 | 2022-08-19 | 威海海洋职业学院 | 一种缓存式会计数据生成方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110209798B (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110209798A (zh) | 一种redis数据库的数据展示方法和装置 | |
US10146887B2 (en) | Providing separate views for items | |
Kane | mips RISC Architecture | |
CN110187878A (zh) | 一种页面生成方法和装置 | |
CN105528388B (zh) | 搜索推荐方法和装置 | |
CN104951507B (zh) | 一种清理移动终端应用中文件的方法及装置 | |
CN106339398A (zh) | 一种网页页面的预读取方法、装置及智能终端设备 | |
CN104199684B (zh) | 浏览器冷启动的实现方法及装置 | |
CN103617196B (zh) | 推荐网址的方法、浏览器、服务器及系统 | |
CN107040584A (zh) | 客户端下载图片的方法及装置 | |
CN110147281A (zh) | 优化雪花算法在金融业务中应用的方法、装置、电子设备 | |
CN110264316A (zh) | 物品信息查询展示方法及装置 | |
CN106326261A (zh) | 一种网页页面的预读取方法、装置及智能终端设备 | |
CN109447749A (zh) | 商品信息录入方法及装置 | |
CN104463642A (zh) | 一种进行广告过滤处理的方法、装置和浏览器客户端 | |
CN106202179A (zh) | 一种页面加载方法和装置 | |
CN105630927B (zh) | 链接生成方法和装置 | |
CN102929952B (zh) | 网页图片显示装置和方法 | |
CN105224252A (zh) | 数据存储方法及装置 | |
CN104199862B (zh) | 基于内容提供方定制的搜索方法、服务器和系统 | |
CN102566977A (zh) | 字节码分支处理器及方法 | |
CN104461264A (zh) | 一种移动终端浏览器中的交互界面生成方法和装置 | |
CN111026964A (zh) | 榜单页面的展示方法、电子设备及计算机存储介质 | |
CN109597941A (zh) | 排序方法及装置、电子设备和存储介质 | |
CN105404695A (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 |