掌桥专利:专业的专利平台
掌桥专利
首页

一种数据检索方法

文献发布时间:2023-06-19 18:32:25


一种数据检索方法

技术领域

本发明涉及数据检索技术领域,具体而言,涉及一种数据检索方法。

背景技术

在传统的软件开发中,开发人员经常会遇到这种问题:开发的新功能是以前的项目开发过的,这时候开发人员为了节省时间,会去以前项目的代码库中搜索相关代码,然后将其添加到现在开发的功能代码中。但如果以前的项目间隔时间较长,开发人员已忘记相关代码放在哪个代码库中,或者之前的代码已被迁移到其他代码库,这样开发人员就无法搜索到相关代码,只有重新编写代码开发新功能。同时开发人员经常需要在没有桌面环境的操作系统中通过输入命令来完成软件的功能,比如文件的下载、软件的安装、环境的部署等。但操作系统的命令非常多而且繁杂,对于开发人员来说要完全记住所有命令是不可能做到的事情,遇到一些系统操作不知道如何编写命令行,只有上网络搜索进行,这样效率低下而且容易操作失误。

在现有技术中,开发人员可以通过将原有代码制作成制品,以制品形式在多个项目中进行相同功能的代码复用,在服务器上通过历史命令的方式来查找之前执行过的命令行,避免重新输入命令,从而解决上面提到的问题。

但是,现有方案存在以下缺点:一个制品可能会包含多种功能,而开发人员往往只需要其中一种功能,其余的功能添加到项目中是一种浪费,并增加项目的复杂度,降低系统的性能;制品的功能往往不是百分之百符合新功能的需求,如果制品提供的API不够灵活,那制品的功能将不能直接用于新功能中;历史命令的方式只能在单台服务器中执行,如果服务器上从未执行过命令,则无法从历史命令中搜索到所需命令。导致搜索效率低下,搜索精度低。

发明内容

本发明的目的在于,针对上述现有技术中的不足,本申请提供了一种数据检索方法,以解决现有技术中搜索效率低下,搜索精度低等问题。

为实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请实施例提供一种数据检索方法,所述方法包括:

接收终端设备发送的检索请求,所述检索请求包括:程序开发数据的描述信息,所述检索请求为所述终端设备响应针对预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件所发送的请求;

根据所述描述信息,在预设数据库中进行模糊搜索,得到所述描述信息匹配的多个程序开发数据;

向所述终端设备返回检索结果,所述检索结果包括:所述多个程序开发数据,所述检索结果用于使得所述终端设备在所述数据编辑区域显示所述多个程序开发数据的选择列表。

可选地,所述检索请求包括:第一检索请求,所述第一检索请求包括代码描述信息,所述第一检索请求为所述终端设备响应针对所述预设集成开发环境的代码编辑区域输入的所述代码描述信息的输入操作,调用所述预设检索插件所发送的请求;

所述根据所述描述信息,在预设数据库中进行模糊搜索,得到所述描述信息匹配的多个程序开发数据,包括:

根据所述代码描述信息,在所述预设数据库中进行模糊搜索,得到所述代码描述信息匹配的多个代码片段;所述多个程序开发数据包括:所述多个代码片段;

所述向所述终端设备返回检索结果,包括:

向所述终端设备返回第一检索结果,所述第一检索结果包括:所述多个代码片段,所述第一检索结果用于使得所述终端设备在所述代码编辑区域中显示所述多个代码片段的选择列表。

可选地,所述检索请求还包括:第二检索请求,所述第二检索请求包括命令描述信息,所述第二检索请求为所述终端设备响应针对所述预设集成开发环境的命令区域输入的所述命令描述信息的输入操作,调用所述预设检索插件所发送的请求;

所述根据所述描述信息,在预设数据库中进行模糊搜索,得到所述描述信息匹配的多个程序开发数据,包括:

根据所述命令描述信息,在所述预设数据库中进行模糊搜索,得到所述命令描述信息匹配的多个命令行;所述多个程序开发数据包括:所述多个命令行;

所述向所述终端设备返回检索结果,包括:

向所述终端设备返回第二检索结果,所述第二检索结果包括:所述多个命令行,所述第二检索结果用于使得所述终端设备在所述命令区域中显示所述多个命令行的选择列表。

可选地,所述根据所述描述信息,在预设数据库中进行模糊搜索,得到所述描述信息匹配的多个程序开发数据,包括:

对所述描述信息进行分词处理,得到多个描述关键词;

根据所述多个描述关键词,在所述预设数据库中进行模糊搜索,得到所述多个描述关键词对应的程序开发数据;所述多个程序开发数据包括:所述多个描述关键词对应的程序开发数据。

可选地,所述向所述终端设备返回检索结果之前,所述方法还包括:

根据所述描述信息,对所述多个程序开发数据进行排序;

相应的,所述检索结果中的所述多个程序开发数据为排序后的所述多个程序开发数据。

可选地,所述方法还包括:

定期从预设服务器中抓取数据;所述预设服务器包括:预设代码托管服务器和/或预设应用服务器;

根据所述数据的内容,确定所述数据的数据类型,所述数据类型用于指示所述数据为代码片段还是命令行;

根据所述数据类型,为所述数据配置对应的数据标签;

将所述数据和对应的所述数据标签存储至所述预设数据库中。

可选地,所述根据所述数据类型,为所述数据配置对应的数据标签,包括:

若所述数据类型指示所述数据为代码片段,则提取代码片段中的数据信息作为第一数据标签;

若所述数据类型指示所述数据为命令行,则对命令行进行分析,得到命令属性,并将所述命令属性作为第二数据标签。

第二方面,本申请实施例提供一种数据检索方法,包括:

响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,所述检索请求包括:所述描述信息;

接收所述检索服务器返回的检索结果,所述检索结果包括:多个程序开发数据,所述多个程序开发数据为所述检索服务器根据所述描述信息,在预设数据库中进行模糊搜索,得到的与所述描述信息匹配的程序开发数据;

在所述数据编辑区域显示所述多个程序开发数据的选择列表。

可选地,所述数据编辑区域包括:代码编辑区域;所述响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,所述检索请求包括:所述描述信息,包括:

响应通过所述代码编辑区域输入的代码描述信息的输入操作,调用所述预设检索插件,向所述检索服务器发送第一检索请求,所述第一检索请求包括:所述代码描述信息;

所述接收所述检索服务器返回的检索结果,包括:

接收所述检索服务器返回的第一检索结果,所述第一检索结果包括:多个代码片段,所述多个代码片段为所述检索服务器根据所述代码描述信息,在所述预设数据库中进行模糊搜索,得到的与所述代码描述信息匹配的代码片段;

所述在所述数据编辑区域显示所述多个程序开发数据的选择列表,包括:

在所述代码编辑区域显示所述多个代码片段的选择列表。

可选地,所述数据编辑区域还包括:命令区域;所述响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,所述检索请求包括:所述描述信息,包括:

响应通过所述命令区域输入的命令描述信息的输入操作,调用所述预设检索插件,向所述检索服务器发送第二检索请求,所述第二检索请求包括:所述命令描述信息;

所述接收所述检索服务器返回的检索结果,包括:

接收所述检索服务器返回的第二检索结果,所述第二检索结果包括:多个命令行,所述多个命令行为所述检索服务器根据所述命令描述信息,在所述预设数据库中进行模糊搜索,得到的与所述命令描述信息匹配的命令行;

所述在所述数据编辑区域显示所述多个程序开发数据的选择列表,包括:

在所述命令区域显示所述多个命令行的选择列表。

相对于现有技术而言,本申请具有以下有益效果:

本申请提供一种数据检索方法,该方法通过接收终端设备发送的检索请求,检索请求包括:程序开发数据的描述信息,检索请求为终端设备响应针对预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件所发送的请求;根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据;向终端设备返回检索结果,检索结果包括:多个程序开发数据,检索结果用于使得终端设备在数据编辑区域显示多个程序开发数据的选择列表。从而,避免了花费大量的时间利用人工查询程序开发数据,降低了人工成本,提高了数据检索效率,提高了数据检索精准度。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请提供的一种数据检索系统的结构示意图;

图2为本申请提供的一种数据检索方法的流程示意图;

图3为本申请提供的一种代码数据检索方法的流程示意图;

图4为本申请提供的一种命令数据检索方法的流程示意图;

图5为本申请提供的一种模糊搜索方法的流程示意图;

图6为本申请提供的一种数据获取方法的流程示意图;

图7为本申请提供的一种配置数据标签的方法的流程示意图;

图8为本申请提供的另一种数据检索方法的流程示意图;

图9为本申请提供的另一种代码数据检索方法的流程示意图;

图10为本申请提供的另一种命令数据检索方法的流程示意图;

图11为本申请实施例提供的一种数据检索装置的示意图;

图12为本申请实施例提供的另一种数据检索装置的示意图;

图13为本申请实施例提供的一种检索服务器的示意图;

图14为本申请实施例提供的一种终端设备的示意图。

图标:100-检索服务器、200-终端设备、1101-第一接收模块、1102-搜索模块、1103-第一发送模块、1201-第二发送模块、1202-第二接收模块、1203-显示模块、1301-第一处理器、1302-第一存储介质、1401-第二处理器、1402-第二存储介质。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

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

为精准地根据需求检索到程序开发数据,本申请提供了一种数据检索方法。

在对本申请提供的一种资源处理方法解释说明之前,先通过具体示例对本申请提供的一种数据检索系统进行解释说明。图1为本申请提供的一种数据检索系统的结构示意图。如图1所示,该系统包括:检索服务器100、终端设备200。

检索服务器100与终端设备200通信连接。终端设备200上安装有集成开发环境,并安装有检索服务器100对应的检索界面,以使得用户通过终端设备200在检索界面进行数据检索,并在检索界面中显示检索结果。检索服务器100集成有检索服务,用于根据检索请求进行数据检索,并将检索结果返回至检索界面,以供用户使用。

示例地,终端设备200为可以安装集成开发环境、并具备计算处理功能的电子设备,例如,平板电脑、台式电脑。检索界面可以以检索插件的形式设置在集成开发环境上,便于在集成开发环境中进行数据检索。终端设备200上的集成开发环境可以通过调用检索服务的API(应用程序接口,Application Programming Interface)接口,实现数据检索。

需要说明的是,集成开发环境和检索服务需要部署在同一个网络环境,可以是同一个局域网,也可以是同一个集群网络,以保证互相之间可以联通。

如下通过具体示例对本申请提供的一种数据检索方法进行解释说明。图2为本申请提供的一种数据检索方法的流程示意图,该方法的执行主体为检索服务器,该检索服务器可以为具有计算、处理功能的设备。如图2所示,该方法包括:

S101、接收终端设备发送的检索请求。

其中,检索请求包括:程序开发数据的描述信息,检索请求为终端设备响应针对预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件所发送的请求。示例地,描述信息可以为中文描述信息,也可以为外文(如,英文)描述信息。

用户在终端设备上的预设集成开发环境进行程序开发数据编辑时,可直接检索查询是否存在相关的程序开发数据,以便于直接使用。用户根据检索需求在预设集成开发环境的数据编辑区域中输入检索需求对应的描述信息。终端设备针对预设集成开发环境的数据编辑区域输入的描述信息,调用预设检索插件发送描述信息对应的检索请求,该检索请求中携带了用户的检索需求。接收到终端设备发送的检索请求,可获知用户的检索需求。

S102、根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据。

接收到终端设备发送的检索请求之后,解析检索请求中的描述信息,可获知用户的检索需求。根据描述信息,在预设数据库中进行模糊搜索,将与描述信息相关的程序开发数据都进行检索匹配,得到描述信息匹配的多个程序开发数据。以使得检索结果尽可能地囊括与描述信息相关的所有程序开发数据,便于用户使用。

示例地,模糊搜索是系统允许搜索信息和搜索匹配信息之间存在一定的差异。具体地,可根据描述信息可设定模糊搜索条件,在预设数据库中查询到所有满足模糊搜索条件的程序开发数据,作为描述信息匹配的多个程序开发数据。

其中,预设数据库缓存有多个程序开发数据,以供数据检索使用。预设数据库缓存的多个程序开发数据都是片段形式的程序开发数据,片段形式的程序开发数据的功能较单一,对应的数据内存也小,便于灵活使用。

S103、向终端设备返回检索结果。

检索结果包括:多个程序开发数据,检索结果用于使得终端设备在数据编辑区域显示多个程序开发数据的选择列表。

多个程序开发数据都是与描述信息匹配的程序开发数据。向终端设备返回检索结果,以使得终端设备可以在数据编辑区域显示多个程序开发数据的选择列表。用户可以根据实际需求在多个程序开发数据的选择列表中选择程序开发数据。从而,避免了花费大量的时间利用人工查询程序开发数据,降低了人工成本,提高了数据检索效率,提高了数据检索精准度。

综上,在本实施例中,通过接收终端设备发送的检索请求,检索请求包括:程序开发数据的描述信息,检索请求为终端设备响应针对预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件所发送的请求;根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据;向终端设备返回检索结果,检索结果包括:多个程序开发数据,检索结果用于使得终端设备在数据编辑区域显示多个程序开发数据的选择列表。从而,避免了花费大量的时间利用人工查询程序开发数据,降低了人工成本,提高了数据检索效率,提高了数据检索精准度。

在上述图2对应的实施例的基础上,本申请还提供了一种代码数据检索方法。图3为本申请提供的一种代码数据检索方法的流程示意图。

其中,检索请求包括:第一检索请求,第一检索请求包括代码描述信息,第一检索请求为终端设备响应针对预设集成开发环境的代码编辑区域输入的代码描述信息的输入操作,调用预设检索插件所发送的请求。

用户在终端设备上的预设集成开发环境进行程序代码编辑时,可直接检索查询是否存在相关的程序代码,以便于直接使用。用户根据代码检索需求在预设集成开发环境的代码编辑区域中,以字符的形式输入代码检索需求对应的代码描述信息。终端设备针对代码描述信息,调用预设检索插件发送代码描述信息对应的检索请求,该检索请求中携带了用户的代码检索需求。接收到终端设备发送的检索请求,可获知用户的检索需求。

如图3所示,在S102中的根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据,包括:

S201、根据代码描述信息,在预设数据库中进行模糊搜索,得到代码描述信息匹配的多个代码片段。

其中,多个程序开发数据包括:多个代码片段。

接收到终端设备发送的检索请求之后,解析检索请求中的代码描述信息,可获知用户的代码检索需求。根据代码描述信息,在预设数据库中进行模糊搜索,将与代码描述信息相关的代码片段都进行检索匹配,得到代码描述信息匹配的多个代码片段。以使得检索结果尽可能地囊括与代码描述信息相关的所有代码片段,便于用户使用。

示例地,在模糊搜索的过程中,根据代码描述信息搜索代码片段中的数据信息,以得到代码描述信息匹配的多个代码片段。例如,代码描述信息中的信息为“主机”,则会搜索出代码片段中的注释内容、函数方法或者方法参数包含“主”、“机”和“主机”的代码片段,作为代码描述信息匹配的多个代码片段。

进一步地,在S103中的向终端设备返回检索结果,包括:

S202、向终端设备返回第一检索结果。

第一检索结果包括:多个代码片段,第一检索结果用于使得终端设备在代码编辑区域中显示多个代码片段的选择列表。

多个代码片段都为代码描述信息匹配的代码片段。向终端设备返回检索结果,以使得终端设备可以在代码编辑区域显示多个代码片段的选择列表。用户可以根据实际需求在多个代码片段的选择列表中选择代码片段。从而,避免了花费大量的时间利用人工查询代码片段,降低了人工成本,提高了代码片段检索效率,提高了代码片段检索精准度。

综上,在本实施例中,通过根据代码描述信息,在预设数据库中进行模糊搜索,得到代码描述信息匹配的多个代码片段;多个程序开发数据包括:多个代码片段;向终端设备返回第一检索结果;第一检索结果包括:多个代码片段,第一检索结果用于使得终端设备在代码编辑区域中显示多个代码片段的选择列表。从而,避免了花费大量的时间利用人工查询代码片段,降低了人工成本,提高了代码片段检索效率,提高了代码片段检索精准度。

在上述图2对应的实施例的基础上,本申请还提供了一种命令数据检索方法。图4为本申请提供的一种命令数据检索方法的流程示意图。

其中,检索请求还包括:第二检索请求,第二检索请求包括命令描述信息,第二检索请求为终端设备响应针对预设集成开发环境的命令区域输入的命令描述信息的输入操作,调用预设检索插件所发送的请求。

用户在终端设备上的预设集成开发环境进行程序命令编辑时,可直接检索查询是否存在相关的程序命令,以便于直接使用。用户根据命令检索需求在预设集成开发环境的命令区域中,以字符的形式输入命令检索需求对应的命令描述信息。终端设备针对命令描述信息,调用预设检索插件发送命令描述信息对应的检索请求,该检索请求中携带了用户的命令检索需求。接收到终端设备发送的检索请求,可获知用户的检索需求。

如图4所示,在S102中的根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据,包括:

S301、根据命令描述信息,在预设数据库中进行模糊搜索,得到命令描述信息匹配的多个命令行。

多个程序开发数据包括:多个命令行;

接收到终端设备发送的检索请求之后,解析检索请求中的命令描述信息,可获知用户的命令检索需求。根据命令描述信息,在预设数据库中进行模糊搜索,将与命令描述信息相关的命令行都进行检索匹配,得到命令描述信息匹配的多个命令行。以使得检索结果尽可能地囊括与命令描述信息相关的所有命令行,便于用户使用。

示例地,在模糊搜索的过程中,根据命令描述信息搜索命令行中的数据信息,以得到命令描述信息匹配的多个命令行。例如,命令描述信息中的信息为“主机”,则会搜索出命令行中的类型、参数、描述等信息包含“主”、“机”和“主机”的命令行,作为命令描述信息匹配的多个命令行。

进一步地,在S103中的向终端设备返回检索结果,包括:

S302、向终端设备返回第二检索结果。

第二检索结果包括:多个命令行,第二检索结果用于使得终端设备在命令区域中显示多个命令行的选择列表。

多个命令行都为命令描述信息匹配的命令行。向终端设备返回检索结果,以使得终端设备可以在命令区域显示多个命令行的选择列表。用户可以根据实际需求在多个命令行的选择列表中选择命令行。从而,避免了花费大量的时间利用人工查询命令行,降低了人工成本,提高了命令行检索效率,提高了命令行检索精准度。

综上,在本实施例中,通过根据命令描述信息,在预设数据库中进行模糊搜索,得到命令描述信息匹配的多个命令行;多个程序开发数据包括:多个命令行;向终端设备返回第二检索结果,第二检索结果包括:多个命令行,第二检索结果用于使得终端设备在命令区域中显示多个命令行的选择列表。从而,避免了花费大量的时间利用人工查询命令行,降低了人工成本,提高了命令行检索效率,提高了命令行检索精准度。

在上述图2对应的实施例的基础上,本申请还提供了一种模糊搜索方法。图5为本申请提供的一种模糊搜索方法的流程示意图。如图5所示,在S102中的根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据,包括:

S401、对描述信息进行分词处理,得到多个描述关键词。

描述信息是用户对检索需求的描述,所输入的语言文字可能比较简略、也可能比较繁琐,输入的文字类型可能是中文、也可能是外文。因此,需要对描述信息进行分词处理,得到多个描述关键词,以根据描述关键词进行更加精准地检索。

若输入的描述信息的文字类型为中文,采用中文分词处理方式将描述信息拆分成多个中文词语,得到多个描述关键词。

其中,中文分词指的是中文在基本文法上有其特殊性而存在的分词,分词就是将连续的字序列按照一定的规范重新组合成语义独立词序列的过程。中文信息往往是一句话或者一个短语,需要根据中文分词处理方式将一句话或者一个短语进行拆分,得到多个中文词语,这些中文词语可能是名词、动词、连词、形容词、副词等。需要将名词、动词等包含实际含义的词语作为描述关键词,连词一般不包含实际含义,可不作为描述关键词。

若输入的描述信息的文字类型为外文,例如英文。则采用英文分词处理方式将描述信息拆分成多个英文词语,得到多个描述关键词。同样的,包含实际含义的英文词语作为描述关键词,不包含实际含义的英文词语作为可不作为描述关键词。

需要说明的是,本步骤中只是采用分词处理的方式得到多个描述关键词,文字类型无论是中文还是外文,都不限定分词处理的具体方法,无论哪一种分词处理方法应用至本申请中所形成的数据检索方法,都在本申请的保护范围内。

S402、根据多个描述关键词,在预设数据库中进行模糊搜索,得到多个描述关键词对应的程序开发数据。

多个程序开发数据包括:多个描述关键词对应的程序开发数据。

接收到终端设备发送的检索请求之后,解析检索请求中的描述关键词,可获知用户的检索需求。根据描述关键词,在预设数据库中进行模糊搜索,将与描述关键词相关的程序开发数据都进行检索匹配,得到描述关键词匹配的多个程序开发数据。以使得检索结果尽可能地囊括与描述关键词相关的所有程序开发数据,便于用户使用。

示例地,根据描述关键词可设定模糊搜索条件,在预设数据库中查询到所有满足模糊搜索条件的程序开发数据,作为描述关键词匹配的多个程序开发数据。例如,描述关键词为“Smith”,模糊搜索就将与之相似的词语“Smithe”、“Smythe”、“Smyth”、“Smitt”等都作为关键词进行搜索。还可设置描述关键词匹配度阈值/数量阈值、模糊搜索匹配度阈值/数量阈值等。将与描述关键词之间的匹配度满足描述关键词匹配度阈值的词语都作为关键词进行搜索,或者,将满足描述关键词匹配数量阈值个匹配词语作为关键词进行搜索。获取满足模糊搜索匹配度阈值的程序开发数据,或者,获取满足模糊搜索匹配数量阈值个程序开发数据。具体的描述关键词匹配度阈值/数量阈值、模糊搜索匹配度阈值/数量阈值,此处并不限定。

综上,在本实施例中,对描述信息进行分词处理,得到多个描述关键词;根据多个描述关键词,在预设数据库中进行模糊搜索,得到多个描述关键词对应的程序开发数据;多个程序开发数据包括:多个描述关键词对应的程序开发数据。从而,通过分词处理,得到多个描述关键词,以根据描述关键词进行更加精准地检索,得到精准的程序开发数据。

在上述图2对应的实施例的基础上,本申请实施例在S103中的向终端设备返回检索结果之前,该方法还包括:

根据描述信息,对多个程序开发数据进行排序。

相应的,检索结果中的多个程序开发数据为排序后的多个程序开发数据。

示例地,根据程序开发数据与描述信息的匹配度对多个程序开发数据由大到小进行排序。以将与描述信息匹配度最高的程序开发数据调整至前列,便于用户查看,提高检索结果使用效率。

例如,描述信息中的信息为“主机”,则会搜索出程序开发数据中的注释内容、函数方法或者方法参数包含“主”、“机”和“主机”的程序开发数据,作为描述信息匹配的多个程序开发数据。其中,包含“主机”的程序开发数据的匹配度最高,只包含“主”或者只包含“机”的程序开发数据的匹配度较低。

综上,在本实施例中,根据描述信息,对多个程序开发数据进行排序;相应的,检索结果中的多个程序开发数据为排序后的多个程序开发数据。从而,通过对多个程序开发数据进行排序,便于用户查看,提高检索结果使用效率。

在上述图2对应的实施例的基础上,本申请还提供了一种数据获取方法。图6为本申请提供的一种数据获取方法的流程示意图。如图6所示,该方法还包括:

S501、定期从预设服务器中抓取数据。

其中,预设服务器包括:预设代码托管服务器和/或预设应用服务器。相较于检索服务器,预设服务器属于外部系统,检索服务器与预设服务器通信连接。

预设代码托管服务器有对应的web(全球广域网,World Wide Web)服务,包括web页面和对外API。示例地,在企业内部一般使用Gitlab作为预设代码托管服务器。

预设应用服务器上部署有内部服务,预设应用服务器可以是内部的物理机服务器,或者是虚拟机服务器,亦或是容器化服务集群等,包括代码托管服务、办公自动化系统等。

预设代码托管服务器和/或预设应用服务器具备以下功能:预设代码托管服务器开放的代码库权限、预设应用服务器可通过用户及密码进行远程登录、提供给外部系统调用的API接口。

定期从预设服务器中抓取数据,以扩充预设数据库中的数据量,以提高数据检索精准度。

S502、根据数据的内容,确定数据的数据类型。

其中,数据类型用于指示数据为代码片段还是命令行。

示例地,通过机器学习对预设数据库中的数据进行处理,根据数据的内容,确定数据为代码片段还是命令行。

S503、根据数据类型,为数据配置对应的数据标签。

确定了数据的数据类型之后,为便于查询数据,根据数据类型,为数据配置对应的数据标签。形成数据与数据标签之间的对应关系。

S504、将数据和对应的数据标签存储至预设数据库中。

将数据和对应的数据标签同时存储至预设数据库中。以便于获取数据时也能获知该数据的数据类型,提高了搜索精准度。

综上,在本实施例中,定期从预设服务器中抓取数据;预设服务器包括:预设代码托管服务器和/或预设应用服务器;根据数据的内容,确定数据的数据类型,数据类型用于指示数据为代码片段还是命令行;根据数据类型,为数据配置对应的数据标签;将数据和对应的数据标签存储至预设数据库中。从而,以扩充预设数据库中的数据量,以提高数据检索精准度。

在上述图6对应的实施例的基础上,本申请还提供了一种配置数据标签的方法。图7为本申请提供的一种配置数据标签的方法的流程示意图。如图7所示,在S502中的根据数据类型,为数据配置对应的数据标签,包括:

S601、若数据类型指示数据为代码片段,则提取代码片段中的数据信息作为第一数据标签。

示例地,代码片段中的数据信息包括代码片段的注释信息、函数名称、方法参数等。

S602、若数据类型指示数据为命令行,则对命令行进行分析,得到命令属性,并将命令属性作为第二数据标签。

示例地,命令行的命令属性包括命令行的类型、参数、描述等。

通过设置数据标签,便于数据检索,提高了数据检索效率。

综上,在本实施例中,若数据类型指示数据为代码片段,则提取代码片段中的数据信息作为第一数据标签;若数据类型指示数据为命令行,则对命令行进行分析,得到命令属性,并将命令属性作为第二数据标签。从而,便于数据检索,提高了数据检索效率。

除了上述实施例之外,本申请还提供了另一种数据检索方法。如下通过具体示例对本申请提供的另一种数据检索方法进行解释说明。图8为本申请提供的另一种数据检索方法的流程示意图,该方法的执行主体为终端设备,该终端设备可以为具有计算、处理功能的设备。如图8所示,该方法包括:

S701、响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求。

其中,检索请求包括:描述信息。

用户在终端设备上的预设集成开发环境进行程序开发数据编辑时,可直接检索查询是否存在相关的程序开发数据,以便于直接使用。用户根据检索需求在预设集成开发环境的数据编辑区域中输入检索需求对应的描述信息。终端设备针对预设集成开发环境的数据编辑区域输入的描述信息,调用预设检索插件发送描述信息对应的检索请求,该检索请求中携带了用户的检索需求。以使得终端设备根据检索请求获知用户的检索需求。

S702、接收检索服务器返回的检索结果。

其中,检索结果包括:多个程序开发数据,多个程序开发数据为检索服务器根据描述信息,在预设数据库中进行模糊搜索,得到的与描述信息匹配的程序开发数据。

多个程序开发数据都是与描述信息匹配的程序开发数据,终端设备接收到检索结果,即说明检索已完成,可根据检索结果向用户展示。

S703、在数据编辑区域显示多个程序开发数据的选择列表。

在数据编辑区域显示多个程序开发数据的选择列表。用户可以根据实际需求在多个程序开发数据的选择列表中选择程序开发数据,便于用户使用检索结果,提高了使用效率。从而,避免了花费大量的时间利用人工查询程序开发数据,降低了人工成本,提高了数据检索效率,提高了数据检索精准度。

综上,在本实施例中,响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,检索请求包括:描述信息;接收检索服务器返回的检索结果,检索结果包括:多个程序开发数据,多个程序开发数据为检索服务器根据描述信息,在预设数据库中进行模糊搜索,得到的与描述信息匹配的程序开发数据;在数据编辑区域显示多个程序开发数据的选择列表。从而,避免了花费大量的时间利用人工查询程序开发数据,降低了人工成本,提高了数据检索效率,提高了数据检索精准度。

在上述图8对应的实施例的基础上,本申请还提供了另一种代码数据检索方法。图9为本申请提供的另一种代码数据检索方法的流程示意图,数据编辑区域包括:代码编辑区域。

如图9所示,在S701中的响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,检索请求包括:描述信息,包括:

S801、响应通过代码编辑区域输入的代码描述信息的输入操作,调用预设检索插件,向检索服务器发送第一检索请求。

其中,第一检索请求包括:代码描述信息;

用户在终端设备上的预设集成开发环境进行程序代码编辑时,可直接检索查询是否存在相关的程序代码,以便于直接使用。用户根据检索需求在预设集成开发环境的代码编辑区域中输入检索需求对应的代码描述信息。终端设备针对预设集成开发环境的代码编辑区域输入的代码描述信息,调用预设检索插件发送代码描述信息对应的检索请求,该检索请求中携带了用户的检索需求。以使得终端设备根据检索请求获知用户的检索需求。

进一步地,在S702中的接收检索服务器返回的检索结果,包括:

S802、接收检索服务器返回的第一检索结果。

其中,第一检索结果包括:多个代码片段,多个代码片段为检索服务器根据代码描述信息,在预设数据库中进行模糊搜索,得到的与代码描述信息匹配的代码片段。

多个代码片段都是与代码描述信息匹配的代码片段,终端设备接收到检索结果,即说明检索已完成,可根据检索结果向用户展示。

进一步地,在S703中的在数据编辑区域显示多个程序开发数据的选择列表,包括:

S803、在代码编辑区域显示多个代码片段的选择列表。

在代码编辑区域显示多个代码片段的选择列表。用户可以根据实际需求在多个代码片段的选择列表中选择代码片段,便于用户使用检索结果,提高了使用效率。从而,避免了花费大量的时间利用人工查询代码片段,降低了人工成本,提高了代码片段检索效率,提高了代码片段检索精准度。

综上,在本实施例中,响应通过代码编辑区域输入的代码描述信息的输入操作,调用预设检索插件,向检索服务器发送第一检索请求,第一检索请求包括:代码描述信息;接收检索服务器返回的第一检索结果,第一检索结果包括:多个代码片段,多个代码片段为检索服务器根据代码描述信息,在预设数据库中进行模糊搜索,得到的与代码描述信息匹配的代码片段;在代码编辑区域显示多个代码片段的选择列表。从而,避免了花费大量的时间利用人工查询代码片段,降低了人工成本,提高了代码片段检索效率,提高了代码片段检索精准度。

在上述图8对应的实施例的基础上,本申请还提供了另一种命令数据检索方法。图10为本申请提供的另一种命令数据检索方法的流程示意图,数据编辑区域还包括:命令区域。

如图10所示,在S701中的响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,检索请求包括:描述信息,包括:

S901、响应通过命令区域输入的命令描述信息的输入操作,调用预设检索插件,向检索服务器发送第二检索请求。

第二检索请求包括:命令描述信息;

用户在终端设备上的预设集成开发环境进行命令编辑时,可直接检索查询是否存在相关的程序命令,以便于直接使用。用户根据检索需求在预设集成开发环境的命令区域中输入检索需求对应的命令描述信息。终端设备针对预设集成开发环境的命令区域输入的命令描述信息,调用预设检索插件发送命令描述信息对应的检索请求,该检索请求中携带了用户的检索需求。以使得终端设备根据检索请求获知用户的检索需求。

进一步地,在S702中的接收检索服务器返回的检索结果,包括:

S902、接收检索服务器返回的第二检索结果。

第二检索结果包括:多个命令行,多个命令行为检索服务器根据命令描述信息,在预设数据库中进行模糊搜索,得到的与命令描述信息匹配的命令行;

多个命令行都是与命令描述信息匹配的代码片段,终端设备接收到检索结果,即说明检索已完成,可根据检索结果向用户展示。

进一步地,在S703中的在数据编辑区域显示多个程序开发数据的选择列表,包括:

S903、在命令区域显示多个命令行的选择列表。

在命令区域显示多个命令行的选择列表。用户可以根据实际需求在多个命令行的选择列表中选择命令行,便于用户使用检索结果,提高了使用效率。从而,避免了花费大量的时间利用人工查询命令行,降低了人工成本,提高了命令行检索效率,提高了命令行检索精准度。

综上,在本实施例中,响应通过命令区域输入的命令描述信息的输入操作,调用预设检索插件,向检索服务器发送第二检索请求,第二检索请求包括:命令描述信息;接收检索服务器返回的第二检索结果,第二检索结果包括:多个命令行,多个命令行为检索服务器根据命令描述信息,在预设数据库中进行模糊搜索,得到的与命令描述信息匹配的命令行;在命令区域显示多个命令行的选择列表。从而,避免了花费大量的时间利用人工查询命令行,降低了人工成本,提高了命令行检索效率,提高了命令行检索精准度。

下述对用以执行的本申请所提供的数据检索装置、服务器及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。

图11为本申请实施例提供的一种数据检索装置的示意图。如图11所示,该装置包括:

第一接收模块1101,用于接收终端设备发送的检索请求,检索请求包括:程序开发数据的描述信息,检索请求为终端设备响应针对预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件所发送的请求。

搜索模块1102,用于根据描述信息,在预设数据库中进行模糊搜索,得到描述信息匹配的多个程序开发数据。

第一发送模块1103,用于向终端设备返回检索结果,检索结果包括:多个程序开发数据,检索结果用于使得终端设备在数据编辑区域显示多个程序开发数据的选择列表。

进一步地,搜索模块1102,具体用于检索请求包括:第一检索请求,第一检索请求包括代码描述信息,第一检索请求为终端设备响应针对预设集成开发环境的代码编辑区域输入的代码描述信息的输入操作,调用预设检索插件所发送的请求;根据代码描述信息,在预设数据库中进行模糊搜索,得到代码描述信息匹配的多个代码片段;多个程序开发数据包括:多个代码片段。

进一步地,第一发送模块1103,具体用于向终端设备返回第一检索结果,第一检索结果包括:多个代码片段,第一检索结果用于使得终端设备在代码编辑区域中显示多个代码片段的选择列表。

进一步地,搜索模块1102,具体还用于检索请求还包括:第二检索请求,第二检索请求包括命令描述信息,第二检索请求为终端设备响应针对预设集成开发环境的命令区域输入的命令描述信息的输入操作,调用预设检索插件所发送的请求;根据命令描述信息,在预设数据库中进行模糊搜索,得到命令描述信息匹配的多个命令行;多个程序开发数据包括:多个命令行;

进一步地,第一发送模块1103,具体还用于进一步地,第一发送模块,具体用于向终端设备返回第二检索结果,第二检索结果包括:多个命令行,第二检索结果用于使得终端设备在命令区域中显示多个命令行的选择列表。

进一步地,搜索模块1102,具体还用于对描述信息进行分词处理,得到多个描述关键词;根据多个描述关键词,在预设数据库中进行模糊搜索,得到多个描述关键词对应的程序开发数据;多个程序开发数据包括:多个描述关键词对应的程序开发数据。

进一步地,第一发送模块1103,具体还用于根据描述信息,对多个程序开发数据进行排序;相应的,检索结果中的多个程序开发数据为排序后的多个程序开发数据。

进一步地,第一接收模块1101,具体用于定期从预设服务器中抓取数据;预设服务器包括:预设代码托管服务器和/或预设应用服务器;根据数据的内容,确定数据的数据类型,数据类型用于指示数据为代码片段还是命令行;根据数据类型,为数据配置对应的数据标签;将数据和对应的数据标签存储至预设数据库中。

进一步地,第一接收模块1101,具体还用于若数据类型指示数据为代码片段,则提取代码片段中的数据信息作为第一数据标签;若数据类型指示数据为命令行,则对命令行进行分析,得到命令属性,并将命令属性作为第二数据标签。

图12为本申请实施例提供的另一种数据检索装置的示意图。如图12所示,该装置包括:

第二发送模块1201,用于响应通过预设集成开发环境的数据编辑区域输入的描述信息的输入操作,调用预设检索插件,向检索服务器发送检索请求,检索请求包括:描述信息。

第二接收模块1202,用于接收检索服务器返回的检索结果,检索结果包括:多个程序开发数据,多个程序开发数据为检索服务器根据描述信息,在预设数据库中进行模糊搜索,得到的与描述信息匹配的程序开发数据。

显示模块1203,用于在数据编辑区域显示多个程序开发数据的选择列表。

进一步地,第二发送模块1201,具体用于数据编辑区域包括:代码编辑区域;响应通过代码编辑区域输入的代码描述信息的输入操作,调用预设检索插件,向检索服务器发送第一检索请求,第一检索请求包括:代码描述信息。

进一步地,第二接收模块1202,具体用于接收检索服务器返回的第一检索结果,第一检索结果包括:多个代码片段,多个代码片段为检索服务器根据代码描述信息,在预设数据库中进行模糊搜索,得到的与代码描述信息匹配的代码片段。

进一步地,显示模块1203,具体用于在代码编辑区域显示多个代码片段的选择列表。

进一步地,第二发送模块1201,具体还用于数据编辑区域还包括:命令区域;响应通过命令区域输入的命令描述信息的输入操作,调用预设检索插件,向检索服务器发送第二检索请求,第二检索请求包括:命令描述信息。

进一步地,第二接收模块1202,具体还用于接收检索服务器返回的第二检索结果,第二检索结果包括:多个命令行,多个命令行为检索服务器根据命令描述信息,在预设数据库中进行模糊搜索,得到的与命令描述信息匹配的命令行。

进一步地,显示模块1203,具体还用于在命令区域显示多个命令行的选择列表。

图13为本申请实施例提供的一种检索服务器的示意图,该检索服务器可以是具备计算处理功能的设备。

该检索服务器包括:第一处理器1301、第一存储介质1302。第一处理器1301和第一存储介质1302通过总线连接。

第一存储介质1302用于存储程序,第一处理器1301调用第一存储介质1302存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。

图14为本申请实施例提供的一种终端设备的示意图,该终端设备可以是具备计算处理功能的设备。

该终端设备包括:第二处理器1401、第二存储介质1402。第二处理器1401和第二存储介质1402通过总线连接。

第二存储介质1402用于存储程序,第二处理器1401调用第二存储介质1402存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。

可选地,本发明还提供一种存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

技术分类

06120115599165