CN113254730B - 一种数据搜索方法、计算设备及可读介质 - Google Patents

一种数据搜索方法、计算设备及可读介质 Download PDF

Info

Publication number
CN113254730B
CN113254730B CN202110442523.1A CN202110442523A CN113254730B CN 113254730 B CN113254730 B CN 113254730B CN 202110442523 A CN202110442523 A CN 202110442523A CN 113254730 B CN113254730 B CN 113254730B
Authority
CN
China
Prior art keywords
screening
item
items
relation
constraint
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
Application number
CN202110442523.1A
Other languages
English (en)
Other versions
CN113254730A (zh
Inventor
胡昌鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Chezhiying Technology Co ltd
Original Assignee
Beijing Chezhiying Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Chezhiying Technology Co ltd filed Critical Beijing Chezhiying Technology Co ltd
Priority to CN202110442523.1A priority Critical patent/CN113254730B/zh
Publication of CN113254730A publication Critical patent/CN113254730A/zh
Application granted granted Critical
Publication of CN113254730B publication Critical patent/CN113254730B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Abstract

本发明公开了一种数据搜索方法,适于在计算设备中的应用程序中执行,计算设备与服务器连接,该方法包括:当应用程序启动时,从服务器获取筛选页面的配置文件,配置文件包括筛选页面对应的多个分类项和多个筛选项以及不同的筛选项之间的约束关系,其中,每个分类项对应至少一个筛选项;基于配置文件,生成筛选页面;获取每个分类项对应的筛选项的选择状态,基于选中的筛选项之间的约束关系,对筛选项的选择状态进行更新,选择状态为选中或未选中;以及基于更新后的筛选项的选择状态,向服务器发送搜索请求消息。本发明一并公开了相应的计算设备及可读介质。

Description

一种数据搜索方法、计算设备及可读介质
技术领域
本发明涉及互联网应用程序领域,尤其涉及一种数据搜索方法、计算设备及可读介质。
背景技术
随着互联网的发展,越来越多的用户通过移动互联网平台搜索并获取信息,基于互联网发展的应用程序成为了广大用户获取信息的主要来源与方式。与此同时,互联网上的数据量非常庞大,例如一个用户量千万级别的应用平台,聚合了关于商家、商品信息、服务信息的大量信息,并且由于各个商家提供的商品和服务各不相同,因而用户从海量数据中搜索信息有诸多的困难和极大的不便。
为了提高搜索效率,高效查找用户所需的信息,需要对信息进行筛选。基于目前的方案,根据用户常用的搜索信息进行归类分组,在客户端内置一份常用的筛选条件的选项。然后,根据用户选择的筛选条件对应的选项,客户端内部通过该选项的键值,搜索相关联的接口进行数据的获取,并展示搜索结果给用户。但是由于不同商家提供的服务项目内容不同且多样,不同商家提供的商品和服务可能存在交集,也可能存在差异。而且一些服务项目之间还可能存在一些关系,例如两个服务项目(新用户福利、老用户回馈)存在互斥关系,用户参加新用户福利就不能参加老用户回馈,反之亦然。目前,客户端需要根据固定的键值进行判断,该方案灵活性低、可维护性差,如果需要对平台的应用程序添加新的服务项目,则需要发布新版本,不仅耗时耗力,而且用户需要更新应用程序后才能获取相关的内容。由于用户不一定会经常更新应用程序,而有些服务或营销是有时效性的,不更新就无法将更新的服务传达给用户,会很大程度上影响商家的营销活动。
鉴于上述原因,需要一种改进应用程序中数据搜索的方案,以减少用户的操作复杂度,从而提高用户的搜索效率。
发明内容
为此,本发明提供了一种数据搜索方法、计算设备及可读介质,以力图解决或至少缓解上面存在的问题。
根据本发明的第一个方面,提供了一种数据搜索的方法,适于在计算设备中的应用程序中执行,计算设备与服务器连接,该方法包括:当应用程序启动时,从服务器获取筛选页面的配置文件,配置文件包括筛选页面对应的多个分类项和多个筛选项以及不同的筛选项之间的约束关系,其中,每个分类项对应至少一个筛选项;基于配置文件,生成筛选页面;获取每个分类项对应的筛选项的选择状态,基于选中的筛选项之间的约束关系,对筛选项的选择状态进行更新,选择状态为选中或未选中;以及基于更新后的筛选项的选择状态,向服务器发送搜索请求消息。
可选地,在根据本发明的方法中,约束关系包括互斥关系,存在互斥关系的两个筛选项的选择状态不能共同为选中,获取每个分类项对应的筛选项的选择状态,基于选中的筛选项之间的约束关系,对筛选项的选择状态进行更新的步骤,包括:针对每一个分类项,获取当前选中的筛选项与已选中的筛选项之间的约束关系;如果所获取的约束关系为互斥关系,则将存在互斥关系的已选中筛选项的选择状态更新为未选中。
可选地,在根据本发明的方法中,约束关系还包括对比关系,存在对比关系的一个筛选项不能与存在对比关系的其他任一筛选项共同选中,基于选中的筛选项之间的约束关系,对筛选项的选择状态进行更新的步骤,还包括:如果所获取的约束关系不是互斥关系,则判断约束关系是否为对比关系;如果约束关系为对比关系,则将存在对比关系的所有已选中筛选项的选择状态更新为未选中。
可选地,在根据本发明的方法中,还包括步骤:接收服务器响应于搜索请求消息发送的搜索结果;基于搜索结果,生成搜索后的内容展示页面。
可选地,在根据本发明的方法中,配置文件还包括筛选页面的生效时间,方法还包括:若当前时间还未达到生效时间,则筛选页面保持原有版本;如果当前时间达到生效时间,则基于配置文件更新筛选页面。
根据本发明的另一方面,提供了一种数据搜索方法,适于在服务器中执行,方法包括:响应于接收到的应用程序发送的请求消息,向应用程序发送筛选页面的配置文件,配置文件包括筛选页面对应的多个分类项和多个筛选项以及不同的筛选项之间的约束关系,其中,每个分类项对应至少一个筛选项;响应于接收到的应用程序发送的搜索请求消息,向应用程序发送搜索结果。
可选地,在根据本发明的方法中,配置文件还包括生效时间。
可选地,在根据本发明的方法中,还包括:对配置文件中的分类项、筛选项、筛选项之间的约束关系或生效时间进行更新。
根据本发明的另一个方面,提供了一种计算设备,包括:至少一个处理器和存储有程序指令的存储器;当程序指令被处理器读取并执行时,使得计算设备执行根据本发明的数据搜索方法。
根据本发明的还有一个方面,提供了一种存储一个或多个应用程序的计算机可读存储介质,一个或多个应用程序包括指令,指令当计算设备执行时,使得计算设备执行根据本发明的数据搜索方法。
根据本发明的技术方案,针对传统方案处理应用程序中的筛选页面的不同选项之间存在各种关系时,灵活性低、可维护性差、一旦更新需要发布应用程序的新版本,用户的操作复杂度高,搜索效率低的问题,构造了筛选页面的配置文件,并通过在应用程序启动时从服务器端获取配置文件,为用户更新筛选页面,该方法不需要应用程序发布新版本来更新页面,因而也无需用户下载更新至应用程序的新版本,便可以在用户无感知的情况下更新页面,降低了用户操作复杂度,提高了用户体验,节省了开发和维护成本。根据筛选项之间的关系,用户能够避免无效筛选项的叠加选择,有效提高搜索效率。在筛选项、筛选项之间的关系、以及生效时间新增或变更时,开发人员可以在服务器中对配置文件进行相应的修改和更新,该方法灵活性高,方便开发人员进行维护,提高了项目变更的效率,从而降低了管理成本。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的计算设备100的结构示意图;
图2示出了根据本发明一个实施例的数据搜索系统200的结构示意图;
图3示出了根据本发明另一个实施例的数据搜索系统300的结构示意图;
图4示出了根据本发明一个实施例的数据搜索方法400的流程示意图;
图5示出了根据本发明一个实施例的数据搜索方法400中步骤S430的处理流程图;
图6示出了根据本发明一个实施例的筛选页面的实例示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
针对现有技术中存在的问题,本发明提供了一种数据搜索方法,以通过获取筛选页面的配置文件,对客户端的筛选页面进行更新,以降低用户的操作复杂度;通过在服务器端对配置文件进行修改,以提高开发维护人员对应用程序管理的灵活性;通过筛选项之间的约束关系,避免用户选择无效的选项,以提高用户的搜索效率。
本发明的数据搜索方法在计算设备中执行。计算设备例如可以是桌面电脑、笔记本电脑等个人配置的计算机,或手机、平板电脑、多媒体播放器、智能可穿戴设备等移动终端,但不限于此。
图1示出了根据本发明一个实施例的计算设备100的示意图。需要说明的是,图1所示的计算设备100仅为一个示例,在实践中,用于实施本发明的数据搜索方法的计算设备可以是任意型号的设备,其硬件配置情况可以与图1所示的计算设备100相同,也可以与图1所示的计算设备100不同。实践中用于实施本发明的数据搜索方法的计算设备可以对图1所示的计算设备100的硬件组件进行增加或删减,本发明对计算设备的具体硬件配置情况不做限制。
如图1所示,在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。
取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的高速缓存、处理器核心114和寄存器116。示例的处理器核心114可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器118可以与处理器104一起使用,或者在一些实现中,存储器控制器118可以是处理器104的一个内部部分。
取决于期望的配置,系统存储器106可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器106可以包括操作系统120、一个或者多个应用122以及程序数据124。在一些实施方式中,应用122可以布置为在操作系统上由一个或多个处理器104利用程序数据124执行指令。操作系统120例如可以是Linux、Windows等,其包括用于处理基本系统服务以及执行依赖于硬件的任务的程序指令。应用122包括用于实现各种用户期望的功能的程序指令,应用122例如可以是浏览器、即时通讯软件、软件开发工具(例如集成开发环境IDE、编译器等)等,但不限于此。当应用122被安装到计算设备100中时,可以向操作系统120添加驱动模块。
在计算设备100启动运行时,处理器104会从存储器106中读取操作系统120的程序指令并执行。应用122运行在操作系统120之上,利用操作系统120以及底层硬件提供的接口来实现各种用户期望的功能。当用户启动应用122时,应用122会加载至存储器106中,处理器104从存储器106中读取并执行应用122的程序指令。
计算设备100还包括储存设备132,储存设备132包括可移除储存器136和不可移除储存器138,可移除储存器136和不可移除储存器138均与储存接口总线134连接。
计算设备100还可以包括有助于从各种接口设备(例如,输出设备142、外设接口144和通信设备146)到基本配置102经由总线/接口控制器130的通信的接口总线140。示例的输出设备142包括图形处理单元148和音频处理单元150。它们可以被配置为有助于经由一个或者多个A/V端口152与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口144可以包括串行接口控制器154和并行接口控制器156,它们可以被配置为有助于经由一个或者多个I/O端口158和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备146可以包括网络控制器160,其可以被布置为便于经由一个或者多个通信端口164与一个或者多个其他计算设备162通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备100中,应用122包括用于执行方法400的指令。上述指令可以指示处理器104执行本发明的数据搜索的方法400,以提高数据搜索的效率。
图2示出了根据本发明一个实施例的数据搜索系统200的结构示意图。如图2所示,数据搜索系统200包括服务器210和客户端230。通常来说,用户可以通过操作客户端230以相应的用户账号与服务器210进行交互。其中,客户端230可以通过诸如局域网(LAN)或者如因特网的广域网(WAN)的一个或多个网络220与服务器210进行通信。
图3示出了根据本发明一个实施例的数据搜索系统300的另一种结构示意图。
如图3所示,数据搜索系统300包括服务器端310和客户端320。
具体地,客户端应用程序启动时,客户端320向服务器端310发送请求筛选页面的配置文件的请求消息,在服务器端310接收到来自客户端320的请求消息后,向客户端320返回筛选页面的配置文件312,该配置文件包含筛选页面对应的多个分类项及各个分类项所对应的一个或多个筛选项,其中,一个分类项可以对应一个筛选项也可以对应多个筛选项。该配置文件还包含筛选项之间的约束关系,同一个分类项下的筛选项之间可以存在约束关系,筛选项之间的约束关系可以是互斥关系、对比关系、以及并列关系。其中,存在互斥关系的两个筛选项的选择状态不能共同为选中,存在对比关系的一个筛选项不能与存在对比关系的其余任一筛选项共同选中,在一个分类项之下存在两个或两个以上互斥关系的。可选地,互斥关系之间还可以存在并列关系。并列关系表示两个或以上互斥关系共同存在。
可选地,筛选页面的配置文件还可以包含生效时间,如果客户端收到的配置文件包含生效时间,且当前时间还未达到生效时间,则筛选页面保持不变;当前时间到达生效时间时,客户端将在规定的生效时间对筛选页面进行更新。设置生效时间有助于对客户端中的服务的统一发布进行管理,例如通过对配置文件的生效时间进行管理可以实现在客户端中某一天或某一时刻同步进行更新或同步活动的发布。
客户端320接收到筛选页面的配置文件312后,在客户端中,基于接收到的配置文件,生成筛选页面322。筛选页面为用户显示多个分类项以及与各个分类项对应的一个或多个筛选项。在客户端320中,基于用户对筛选页面中筛选项的选择,获取当前选中的筛选项并根据选中的筛选项之间的约束关系,对筛选项的选择状态进行更新,更新完成后,获得选择状态为选中的筛选项作为组合筛选项324。也就是说,组合筛选项包含了更新后的选择状态为选中的筛选项。
客户端在响应用户的确认操作后,根据组合筛选项324生成搜索请求消息并发送至服务器端310,服务器端在接收到该搜索请求消息后,调用服务器中搜索数据的接口(API),在数据存储器314中进行搜索,并将搜索结果返回至客户端320。其中,数据存储器314包含一个或多个数据库,在数据存储器中还可以选择一部分数据作为缓存存入数据库,便于热点数据随时调用,提高用户搜索效率。
客户端接收到服务器基于搜索请求消息返回的搜索结果,根据用户的搜索生成内容展示页面,该页面根据用户选择的筛选条件(筛选项)对数据存储器中包含的相关数据进行搜索生成。
在一种实施例中,在服务器中修改、更新或添加新的配置文件。在服务器端,增加或修改分类项以及其对应的筛选项,并为筛选项配置约束关系。这样,应用程序的筛选页面和其相应的功能都是通过配置文件生成,使得应用程序的更新时间缩短,能够快速响应需求的变换。可选地,在服务器中为配置文件设置生效时间。
图4示出了根据本发明一个实施例的数据搜索方法400的流程示意图。如图4所示,数据搜索方法400始于步骤S410。
在步骤S410中,当应用程序启动时,从服务器获取筛选页面的配置文件。
具体地,该配置文件包括筛选页面对应的多个分类项和多个筛选项以及不同的筛选项之间的约束关系。其中,每个分类项对应至少一个筛选项。也就是说,一个分类项可以对应一个筛选项也可以对应多个筛选项。
根据本发明的一种实施例,在配置文件中为每个分类项定义固定的键(key),并定义筛选类型(type),筛选类型可以为单选或多选。可选地,为筛选类型定义不同的数字以代表单选或多选。在配置文件中,为每个分类项对应的筛选项定义值(value)。可选地,为每个分类项对应的筛选项定义不同数字作为该筛选项的值。
配置文件还包含筛选项之间的约束关系,其中约束关系可以是互斥关系、对比关系、以及并列关系。本发明的技术方案中的配置文件可以以不同的文件格式实现,例如,YAML,INI,XML,TOML,JSON等等,本发明对配置文件的格式不做限制。
下面以一种存储格式为JSON的配置文件为例,配置文件中的分类项、筛选项以及筛选项之间的约束关系如下所示:
具体地,在上述示例中,配置文件为JSON格式。配置文件中的每个分类项定义了固定且唯一的key,例如,该示例中的分类项包括“服务”、“级别”、以及“质保”,与其对应的key分别为“service”、“level”和“warranty”。配置文件为每一个分类项定义了筛选类型type。可选地,在一种实施例中,"type":"1"表示该分类项对应的筛选项为单选,"type":"2"表示该分类项对应的筛选项为多选。相应地,对于type为1的分类项,用户只能选择该分类项下的一个筛选项,如果用户在已经选择了一个筛选项的情况下,又选择了同一分类项对应的其他筛选项,则只保留最新选择的筛选项。对于type为2的分类项,用户可以选择该分类项对应的多个筛选项,应用程序将根据筛选项之间的约束关系对筛选项的选择状态进行更新。
在配置文件中为每一个分类项对应的筛选项定义值(value)。可选地,在同一个分类项中为每一个筛选项定义不同的value,例如,该示例中的分类项“服务”对应的筛选项有“不限”、“双十一”等等,筛选项“不限”的value定义为0,筛选项“双十一”的value定义为1。并且,在配置文件中还可以为每个分类项中的筛选项定义约束关系(relation)。可选地,在relation用数组来规定不同筛选项之间的约束关系,数组的元素中的数字代表筛选项的value,数组的每个元素包含的value所对应的筛选项之间的约束关系为互斥关系,元素之间为并列关系,例如"exclude":[["2","3"],["3","4"]]表示value为2的筛选项“全球购”和value为3的“诚信联盟”之间的关系为互斥关系,value为3的“诚信联盟”和value为4的“分期购车”之间也是互斥关系,而上述两个互斥关系之间为并列关系,表示两个互斥关系可以共同存在。可选地,不同的分类项对应的筛选项之间也可以不定义约束关系。
在一种实施例中,同一个分类项对应的筛选项之间的约束关系还可以包括对比关系,筛选项之间的对比关系如下所示:
具体地,对比关系表示在同一个分类项中,一个筛选项不能与存在对比关系的其他任一筛选项共同选中。在该示例中增加了筛选项“店铺”,并增加了对比关系,"compare":[{"a":"7","b":["1","2","3","4","5","6"]}表示a对应的value为7的筛选项“店铺”不能与存在对比关系的其他任一筛选项(b对应的value为1-6的筛选项中任一项)共同选中;其中,b对应的value为1-6的筛选项之间为并列关系,其中的任意两项或多项可以同时选中。
根据本发明的一种实施例,可以在服务器端中对筛选页面的配置文件进行动态配置。根据应用程序的用户以及商家的业务需求、活动方案,在服务器中对配置文件的分类项、筛选项、筛选项之间的约束关系以及生效时间进行更改。在对配置文件进行更改后,配置文件可以通过网络同步到客户端,以保障客户端可以获得最新的搜索服务。
而后在步骤S420中,基于配置文件,生成筛选页面。
可选地,使用开源的GSON工具解析配置文件,将序列化后的字符串返回给页面渲染器,并在客户端中,对筛选页面UI进行渲染。
随后在步骤S430中,获取每个分类项对应的筛选项的选择状态,基于选中的筛选项之间的约束关系,对筛选项的选择状态进行更新,其中,选择状态为选中或未选中。
以下介绍步骤S430的一种实现方式。
图5示出了根据本发明一个实施例的数据搜索方法400中步骤S430的处理流程图。如图5所示,在步骤S510中,针对每一个分类项,获取当前选中的筛选项与前面的每一项选中的筛选项之间的约束关系。
接下来以图6为例进一步说明步骤S510。
在如图6所示的根据本发明一个实施例的筛选页面的实例示意图中,左侧纵列为应用程序中筛选页面上的多个分类项,其中包括分类项“服务”、“品牌”、“价格”等等。例如,当用户点击了分类项“服务”对应的筛选项“视频看车”对应的按键后,那么该筛选项“视频看车”的选择状态为选中,随后当用户点击筛选项“分期购车”时,获取当前选中的筛选项“分期购车”与前面选中的筛选项“视频看车”之间的约束关系,根据该示例的约束关系可知,value为6的“视频看车”与value为4的“分期购车”没有约束关系,这时该分类项中选中的筛选项为“视频看车”和“分期购车”。随后,当用户点击筛选项“诚信联盟”时,获取当前选中的筛选项“诚信联盟”与前面的每一项选中的筛选项之间的约束关系,即获取“诚信联盟”与“视频看车”以及“诚信联盟”与“分期购车”之间的关系,根据该示例所示的约束关系"exclude":[["2","3"],["3","4"]]可知value为3的筛选项“诚信联盟”与value为4的筛选项“分期购车”之间存在互斥关系。
随后在步骤S520中,如果约束关系为互斥关系,则将前一项选中的筛选项的选择状态更新为未选中。
具体地,针对同一分类项中的筛选项,获取当前选中的筛选项,根据当前选中的筛选项与前面每一项选中的筛选项之间的约束关系确定是否更新其选择状态,如果当前选中的筛选项与前面选中的一项筛选项之间存在互斥关系,则清除用户对前一项筛选项的选中操作(即将前一项选中的筛选项的选择状态更新为未选中),选中当前选择的筛选项。
在上面的例子中,获取到筛选项“诚信联盟”与“分期购车”之间的关系为互斥关系,则保留用户当前选项(筛选项“诚信联盟”),即筛选项“诚信联盟”的选择状态仍然为选中,并将前面选中的选项“分期购车”的选择状态更改为未选中。由于筛选项“诚信联盟”与“视频看车”之间不存在约束关系,这两个筛选项的选择状态不做改变。更新后,用户的选中项为“视频看车”与“诚信联盟”。
随后在步骤S530中,如果约束关系不是互斥关系,则判断约束关系是否为对比关系。
随后在步骤S540中,如果约束关系为对比关系,则将前一项选中的筛选项的选择状态更新为未选中。
具体地,如果判断结果为当前选中的筛选项与前一项选中的筛选项之间存在对比关系,则清除用户对前一项选中的筛选项的选中操作,保留当前选中的筛选项。根据该示例所示的约束关系"compare":[{"a":"7","b":["1","2","3","4","5","6"]}可知value为7的筛选项“店铺”与该分类项“服务”中value为1-6的任一项筛选项之间的关系为对比关系。并且根据该示例所示的互斥关系可知,value为3的筛选项“诚信联盟”与value为4的筛选项“分期购车”为互斥关系。在如图6所示的根据本发明一个实施例的筛选页面的实例示意图中,如果用户点击了筛选项“店铺”的按键,那么该筛选项“店铺”的选择状态为选中,随后,当用户点击了与“店铺”存在对比关系的任一项筛选项的按键时,例如,用户点击了value为6的筛选项“视频看车”,则清除前一项点击的“店铺”的选择状态,即将筛选项“店铺”的选择状态更新为未选中,保留当前选中的筛选项“视频看车”。同理,如果用户点击了对比关系中b对应的筛选项中任一项的按键,例如,用户点击了value为6的筛选项“视频看车”,那么该筛选项“视频看车”的选择状态为选中,随后当用户点击对比关系中a对应的筛选项“店铺”的按键时,则清除前一项点击的“视频看车”的选择状态,即将筛选项“视频看车”的选择状态更新为未选中,保留当前选中的筛选项“店铺”。
随后在步骤S440中,基于更新后的筛选项的选择状态,向服务器发送搜索请求消息。
在一种实施例中,基于用户根据自身搜索需求点击的筛选项的按键以及筛选项之间的关系,对筛选项的选择状态更新后,当前选中的筛选项为组合筛选项324,用户确定按当前筛选项(组合筛选项)搜索,客户端的应用程序将接收到用户根据选中的筛选项(组合筛选项)进行搜索的指令。随后应用程序向服务器发送搜索请求消息,服务器接收到该搜索请求消息后,从提供数据搜索服务的API接口获取数据。随后服务器将获取到的搜索结果返回给应用程序,应用程序接收到服务器响应于搜索请求消息发送的搜索结果,并渲染生成内容展示页面。
本方案提供了一种灵活、高效的数据搜索方法,在应用程序启动时通过从服务器获取筛选页面的配置文件,对客户端的筛选页面进行更新,用户在无感知的情况下获得更新,降低了用户的操作复杂度,提升用户体验,并且客户端中筛选页面的数据能够保持与服务器端的配置文件中的数据一致,使用户能够快速便捷地获取最新的搜索服务;通过在服务器端对配置文件进行修改更新,开发人员在服务器端即可对应用程序的筛选页面进行更新,无需发布新版本的应用程序,提高了开发维护人员对应用程序管理的灵活性和可扩展性,还可以实现客户端中筛选页面与服务器端同步;通过配置筛选项之间的约束关系,在客户端中过滤一些冲突的搜索条件,避免用户选择无效的选项而无法搜索到需要的信息,提高了用户的搜索效率,优化了用户体验,并降低了服务器压力。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的多语言垃圾文本的识别方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
本说明书的描述中,除非另有明确的规定和限定,术语“连接”、“固定”等均应做广义理解。此外,术语“上”、“下”、“内”、“外”、“顶”、“底”等指示的方位或位置关系是基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的设备或单元必须具有特定的方向、以特定的方位构造和操作,因此,不能理解为对本发明的限制。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (7)

1.一种数据搜索的方法,适于在计算设备中的应用程序中执行,所述计算设备与服务器连接,所述方法包括:
当所述应用程序启动时,从所述服务器获取筛选页面的配置文件,所述配置文件包括筛选页面对应的多个分类项和多个筛选项以及不同的筛选项之间的约束关系,其中,每个所述分类项对应至少一个所述筛选项,所述约束关系包括互斥关系、对比关系、并列关系,存在所述互斥关系的两个筛选项的选择状态不能共同为选中,存在所述对比关系的一个筛选项不能与存在对比关系的其他任一筛选项共同选中,所述并列关系表示两个或以上所述互斥关系共同存在,其中,所述分类项的筛选类型分为单选和多选,所述单选为用户只能选择该分类项下的一个筛选项,所述多选为用户可以选择该分类项对应的多个筛选项;
基于所述配置文件,生成所述筛选页面;
获取每个所述分类项对应的筛选项的选择状态,基于选中的筛选项之间的约束关系,对所述筛选项的选择状态进行更新,所述选择状态为选中或未选中;
基于更新后的筛选项的选择状态,向所述服务器发送搜索请求消息;
其中,基于选中的所述筛选项之间的约束关系,对所述筛选项的所述选择状态进行更新的步骤,包括:
针对每一个所述分类项,获取当前选中的筛选项与已选中的筛选项之间的约束关系;
如果所获取的约束关系为互斥关系,则将存在互斥关系的已选中筛选项的选择状态更新为未选中;
其中,所述配置文件还包括所述筛选页面的生效时间,所述方法还包括:
若当前时间还未达到所述生效时间,则所述筛选页面保持原有版本;
如果当前时间达到所述生效时间,则基于所述配置文件更新所述筛选页面。
2.如权利要求1所述的方法,其中,所述基于选中的所述筛选项之间的约束关系,对所述筛选项的所述选择状态进行更新的步骤,还包括:
如果所获取的约束关系不是互斥关系,则判断所述约束关系是否为对比关系;
如果所述约束关系为对比关系,则将存在对比关系的所有已选中筛选项的选择状态更新为未选中。
3.如权利要求1所述的方法,还包括步骤:
接收所述服务器响应于搜索请求消息发送的搜索结果;
基于所述搜索结果,生成搜索后的内容展示页面。
4.一种数据搜索方法,适于在服务器中执行,所述方法包括:
响应于接收到的应用程序发送的请求消息,向所述应用程序发送筛选页面的配置文件,所述配置文件包括筛选页面对应的多个分类项和多个筛选项以及不同的筛选项之间的约束关系,其中,每个所述分类项对应至少一个所述筛选项,所述约束关系包括互斥关系、对比关系、并列关系,存在所述互斥关系的两个筛选项的选择状态不能共同为选中,存在所述对比关系的一个筛选项不能与存在对比关系的其他任一筛选项共同选中,所述并列关系表示两个或以上所述互斥关系共同存在;响应于接收到的所述应用程序发送的搜索请求消息,向所述应用程序发送搜索结果;其中,所述分类项的筛选类型分为单选和多选,所述单选为用户只能选择该分类项下的一个筛选项,所述多选为用户可以选择该分类项对应的多个筛选项;
其中,基于选中的所述筛选项之间的约束关系,对所述筛选项的所述选择状态进行更新的步骤,包括:
针对每一个所述分类项,获取当前选中的筛选项与已选中的筛选项之间的约束关系;
如果所获取的约束关系为互斥关系,则将存在互斥关系的已选中筛选项的选择状态更新为未选中;
其中,所述配置文件还包括生效时间,若当前时间还未达到所述生效时间,则所述应用程序获取的筛选界面保持原有版本,如果当前时间达到所述生效时间,则所述应用程序基于所述配置文件更新所述筛选界面。
5.如权利要求4所述的方法,还包括:
对所述配置文件中的分类项、筛选项、筛选项之间的约束关系或所述生效时间进行更新。
6.一种计算设备,包括:
至少一个处理器和存储有程序指令的存储器;
当所述程序指令被所述处理器读取并执行时,使得所述计算设备执行如权利要求1-5中任一项所述的方法。
7.一种存储一个或多个应用程序的计算机可读存储介质,所述一个或多个应用程序包括指令,所述指令当计算设备执行时,使得所述计算设备执行根据权利要求1-5所述的方法中的任一方法。
CN202110442523.1A 2021-04-23 2021-04-23 一种数据搜索方法、计算设备及可读介质 Active CN113254730B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110442523.1A CN113254730B (zh) 2021-04-23 2021-04-23 一种数据搜索方法、计算设备及可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110442523.1A CN113254730B (zh) 2021-04-23 2021-04-23 一种数据搜索方法、计算设备及可读介质

Publications (2)

Publication Number Publication Date
CN113254730A CN113254730A (zh) 2021-08-13
CN113254730B true CN113254730B (zh) 2024-03-15

Family

ID=77221410

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110442523.1A Active CN113254730B (zh) 2021-04-23 2021-04-23 一种数据搜索方法、计算设备及可读介质

Country Status (1)

Country Link
CN (1) CN113254730B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113965538B (zh) * 2021-10-21 2023-04-18 青岛海信智慧生活科技股份有限公司 设备状态消息处理方法、装置及存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962504B1 (en) * 2005-05-26 2011-06-14 Aol Inc. Sourcing terms into a search engine
CN104412261A (zh) * 2012-04-11 2015-03-11 英特尔公司 用户界面内容个性化系统
CN106233282A (zh) * 2013-12-31 2016-12-14 奎克西公司 使用设备能力的应用搜索
CN106445940A (zh) * 2015-08-05 2017-02-22 阿里巴巴集团控股有限公司 一种导航方法及装置
CN108804629A (zh) * 2018-05-31 2018-11-13 北京五八信息技术有限公司 一种筛选项的处理方法、装置、存储介质及设备
CN109416699A (zh) * 2016-03-18 2019-03-01 亚马逊科技公司 用于显现相关结果的用户界面元素
CN109767282A (zh) * 2018-11-20 2019-05-17 北京五八亚太企业管理服务有限公司 智能化商品筛选方法及装置、电子设备
CN110598107A (zh) * 2019-09-09 2019-12-20 恩亿科(北京)数据科技有限公司 查询系统的管理方法和计算机存储介质
CN110784340A (zh) * 2019-10-09 2020-02-11 无线生活(北京)信息技术有限公司 配置信息更新方法及装置
CN110941783A (zh) * 2019-11-12 2020-03-31 北京城市网邻信息技术有限公司 一种业务界面的展示方法和装置
CN112000330A (zh) * 2020-07-15 2020-11-27 北京百度网讯科技有限公司 建模参数的配置方法、装置、设备和计算机存储介质
CN112149393A (zh) * 2020-09-23 2020-12-29 腾讯科技(深圳)有限公司 一种数据处理方法、设备以及计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130238583A1 (en) * 2012-03-08 2013-09-12 Sap Portals Israel Ltd. Enterprise portal contextual search
US9298785B2 (en) * 2013-07-19 2016-03-29 Paypal, Inc. Methods, systems, and apparatus for generating search results
US20150278717A1 (en) * 2014-03-28 2015-10-01 International Business Machines Corporation Task reduction in dynamic case management
US9930167B2 (en) * 2014-07-07 2018-03-27 Verizon Patent And Licensing Inc. Messaging application with in-application search functionality
US10437838B2 (en) * 2016-03-28 2019-10-08 Amazon Technologies, Inc. Search navigation element
US10891341B2 (en) * 2019-04-02 2021-01-12 Onemata Corporation Searching of real-time internet content responsive to a structured search query generated based on user-specified search terms/phrases and private database records matching initial user-selected constraints

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962504B1 (en) * 2005-05-26 2011-06-14 Aol Inc. Sourcing terms into a search engine
CN104412261A (zh) * 2012-04-11 2015-03-11 英特尔公司 用户界面内容个性化系统
CN106233282A (zh) * 2013-12-31 2016-12-14 奎克西公司 使用设备能力的应用搜索
CN106445940A (zh) * 2015-08-05 2017-02-22 阿里巴巴集团控股有限公司 一种导航方法及装置
CN109416699A (zh) * 2016-03-18 2019-03-01 亚马逊科技公司 用于显现相关结果的用户界面元素
CN108804629A (zh) * 2018-05-31 2018-11-13 北京五八信息技术有限公司 一种筛选项的处理方法、装置、存储介质及设备
CN109767282A (zh) * 2018-11-20 2019-05-17 北京五八亚太企业管理服务有限公司 智能化商品筛选方法及装置、电子设备
CN110598107A (zh) * 2019-09-09 2019-12-20 恩亿科(北京)数据科技有限公司 查询系统的管理方法和计算机存储介质
CN110784340A (zh) * 2019-10-09 2020-02-11 无线生活(北京)信息技术有限公司 配置信息更新方法及装置
CN110941783A (zh) * 2019-11-12 2020-03-31 北京城市网邻信息技术有限公司 一种业务界面的展示方法和装置
CN112000330A (zh) * 2020-07-15 2020-11-27 北京百度网讯科技有限公司 建模参数的配置方法、装置、设备和计算机存储介质
CN112149393A (zh) * 2020-09-23 2020-12-29 腾讯科技(深圳)有限公司 一种数据处理方法、设备以及计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于BDI的语义搜索及其在数字旅游中的应用;陈昊;李银胜;沈剑平;;计算机应用与软件;20160815(第08期);36-41 *
基于蚁群优化算法的电力系统暂态稳定评估特征选择;王海燕;刘天琪;李兴源;陈烨;;电力系统保护与控制;20081101(第21期);10-15 *

Also Published As

Publication number Publication date
CN113254730A (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
US9778920B2 (en) Mobile design patterns
CN108352003B (zh) 用于通过协同数据库服务的单选或多选数据呈现的方法和设备
US7991646B2 (en) Systems and methods for marketplace listings using a camera enabled mobile device
US9043750B2 (en) Automated generation of two-tier mobile applications
US8434097B2 (en) Dynamic data binding for MBOs for container based application
CN110727431A (zh) 小程序生成方法以及装置
CN102063463A (zh) 便携式设备和计算机之间的用户接口系统和方法
US11620444B2 (en) Providing action associated with event detected within communication
US10803237B2 (en) Systems and methods for data entry into a region of a display
Guler et al. Automating bibliometric analyses using Taverna scientific workflows: A tutorial on integrating Web Services
US9614790B2 (en) Apparatus for controlling execution of software, method for controlling thereof, and computer-readable recording medium having computer program for controlling thereof
US10951486B2 (en) Terminal device, UI expansion method, and UI expansion program
CN113254730B (zh) 一种数据搜索方法、计算设备及可读介质
US11625243B2 (en) Micro-application creation and execution
US20090300594A1 (en) System and method for content replacement
US20180191841A1 (en) Automatic installation activation selection for hosted services
US10884765B1 (en) Object configuration dynamic graphical user interface
US10354313B2 (en) Emphasizing communication based on past interaction related to promoted items
CN113242282A (zh) 一种用于目标人群的连续信息推送方法、装置和电子设备
CN113535650A (zh) 一种文件命名方法及计算设备
WO2012036831A2 (en) Techniques to provide pivot-based search for business data
Hu et al. SeqVISTA: a new module of integrated computational tools for studying transcriptional regulation
CN111428178B (zh) 页面内容的处理方法、系统及计算设备
Cooper et al. Activity-based cost management system architecture--part II
US20200334721A1 (en) Processing of pricing update documents

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