【技术实现步骤摘要】
本专利技术涉及数据搜索
,特别是涉及一种利用AJAX异步传输动态实现数据搜索技术。
技术介绍
Internet正在以惊人的速度发展着,网络中的页面数量已经达数百亿,传统的检索方法不再适用于WEB信息检索,搜索引擎成为重要的网络检索工具之一。传统的搜索引擎基于一次性“请求-响应”模式(即同步传输模式),搜索引擎根据用户请求从诸多庞杂的互联网数据中快速的取得与所述请求匹配的数据供用户利用,因此搜索速度及匹配度亦成为其执行效率的重要指标,特别是在中文搜索环境下,由于中文并不像英文那样,只需要依照字母的顺序排列组合就能够轻易的进行搜索,在不影响搜索速度及匹配度的情形下,为使用户在中文搜索环境下亦可使用输入拼音、字母方式搜索相关数据,现有的中文搜索引擎在用户输入界面提供下拉框搜索匹配功能,当用户输入字母或拼音后,出现下拉框选项供用户点选与其输入匹配的若干条内容。该方法虽可提供用户在中文搜索环境下进行中文汉字或拼音/字母搜索,然为提供该下拉框搜索匹配功能,现有技术采用人工录入方式设置下拉框显示的内容,如果所要设置的数据量很大的情形下仍采用人工录入方式,不仅费时费力,而且还会出现数据录入错误。因此,有必要提出一种新的数据搜索技术,以避免上述现有搜索技术所面临的诸多问题,实已成为目前业界亟待克服之难题。
技术实现思路
鉴于上述现有技术的缺失,本专利技术之目的在于提出一种新的数据搜索系统及方法,其可自动动态录入多种匹配搜索功能以实现汉字、拼音搜索转换,避免人工录入转换引起的效率低、数据错误等问题。本专利技术之另一目的在于提出一种新的数据搜索系统及方法,其可提供异步 >
搜索功能,分步完成搜索,用户无需等待即可持续进行搜索操作。为达上述及其他目的,本专利技术提出一种数据搜索系统,包括:用户端,接收用户输入的关键字,所述关键字为汉字或字母;传输模块,将所述关键字数据异步传输给服务器端;服务器端,接收所述关键字数据,判断所述关键字的类型,若为汉字,则自所述服务器端的数据库查询数据,并将查询结果透过所述传输模块传回至所述用户端,若为字母,则所述服务器端判断所述数据库中是否存在临时表,若是则自该临时表查询数据,并将查询结果透过所述传输模块传回至所述用户端,若不存在所述临时表,则创建临时表,并将所述数据库中的原始数据取出转换成字母数据储存在所述临时表中,之后自所创建临时表查询数据并透过所述传输模块返回给所述用户端。较佳地,本专利技术之服务器端包括:判断模块,用于判断所述关键字的类型;创建模块,用于创建所述临时表;转换模块,用于将所述数据库中的原始数据取出转换成字母数据储存在所述临时表中;以及查询模块,用于自所述数据库或所述临时表查询与所述关键字匹配的数据;较佳地,本专利技术之临时表是储存在内存中。较佳地,所述服务器端还包括数据处理模块,用于对所述传输模块所传输的关键字数据进行处理以去除不安全字符,如*、空格等字符。较佳地,所述传输模块使用AJAX(Asynchronous JavaScript XML)数据格式将所述关键字传输给所述服务器端。本专利技术还提出一种利用上述搜索系统进行数据搜索的方法,该方法包括:步骤S1:用户自用户端输入关键字,所述关键字为汉字或字母;步骤S2:将所述关键字数据异步传输给服务器端;步骤S3:服务器端判断所述关键字的类型,若是汉字则执行步骤S4,若是字母则执行步骤S5;步骤S4:自所述服务器端的数据库查询与所述关键字匹配的数据返回给所述用户端;步骤S5:所述服务器端判断是否存在储存有字母数据的临时表,若有则进入步骤S8,若无则进入步骤S6;步骤S6:创建一临时表;步骤S7:自所述数据库取出原始数据并将其转换成拼音数据储存在所创建的临时表中;步骤S8:自所述临时表查询与所述关键字匹配的数据返回给所述用户端。较佳地,本专利技术之方法步骤S2中,是使用AJAX将所述关键字传输给所述服务器端。较佳地,本专利技术之方法步骤S3中,在所述服务器端接收到所述关键字数据后还包括去除所述关键字中不安全字符的步骤。较佳地,本专利技术之方法步骤S6中,是采用SQL(Structured Query Language,结构查询语言)语句创建所述临时表。与现有技术相比,本专利技术主要在服务器端针对用户输入的关键字进行分类查询,若输入的关键字是汉字直接自数据库查询数据返回给用户,若输入的关键字是字母则自临时表查询(该临时表若不存在,则由服务器端先建立所述临时表),本专利技术之临时表可根据数据库中的原始数据动态生成,且不改变原始数据结构,与现有技术采用人工录入方式相比,本专利技术可节约人力成本且可保证临时表中数据无误进而可提升数据搜索匹配度;再者,本专利技术之临时表储存在内存可,可快速读取,进而可提升数据搜索速度。以及,本专利技术利用例如AJAX使用户端与服务器端进行数据异步传输,能够使得用户端与服务器端响应、交互异步化。附图说明下面将以明确易懂的方式,结合附图说明优选实施方式,对一种数据搜索系统及方法的上述特性、技术特征、优点及其实现方式予以进一步说明。图1是本专利技术之数据搜索系统之基本架构图;以及图2是本专利技术之数据搜索方法流程图。附图标号说明:10.用户端,11.传输模块,12.服务器端,120.判断模块,121.创建模块,122.查询模块,123.临时表,124.数据库,125.转换模块。具体实施方式为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对照附图说明本专利技术的具体实施方式。显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。为使图面简洁,各图中只示意性地表示出了与本专利技术相关的部分,它们并
不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。请参阅图1,其显示本专利技术之数据搜索系统基本架构示意图。如图1所示,本专利技术之数据搜索系统包括用户端10、传输模块11以及服务器端12,以下即对本专利技术之各组成部分进行详细介绍。用户端10,供用户输入其搜索数据所使用的关键字,所述关键字例如为汉字或字母,所述字母例如为汉字拼音或汉字首字母拼音。传输模块11,供用户端10与服务器端进行数据交换传输,传输模块11将用户端10输入的关键字数据异步传输给服务器端,并可将服务器端返回的查询数据传输给用户端。本实施例中,传输模块11的使用AJAX(Asynchronous JavaScript XML)异步传输所述关键字数据为服务器端12。本实施例中,用户透过用户端10提供的输入界面(例如键盘)输入关键字触发JavaScript调用AJAX,由AJAX创建包含所述关键字的例如XMLHttpRequest请求,并将所创请求传输给服务器端12,服务器端12针对所述请求进行响应,并将查询结果以字符串或XML格式返回给AJAX,由AJAX将查询结果传输给用户端10。服务器端12,与传输模块11连接,接收所述关键字数,对所述关键字类型进行判断,并针对关键字类型进行后续查询处理。如图1所示,服务器端12进一步包本文档来自技高网...
【技术保护点】
一种数据搜索系统,其特征在于,包括:用户端,接收用户输入的关键字,所述关键字为汉字或字母;传输模块,将所述关键字数据异步传输给服务器端;以及服务器端,接收所述关键字数据,判断所述关键字的类型,若为汉字,则自所述服务器端的数据库查询数据,并将查询结果透过所述传输模块传回至所述用户端,若为字母,则所述服务器端判断所述数据库中是否存在临时表,若是则自该临时表查询数据,并将查询结果透过所述传输模块传回至所述用户端,若不存在所述临时表,则创建临时表,并将所述数据库中的原始数据取出转换成字母数据储存在所述临时表中,之后自所创建临时表查询数据并透过所述传输模块返回给所述用户端。
【技术特征摘要】
1.一种数据搜索系统,其特征在于,包括:用户端,接收用户输入的关键字,所述关键字为汉字或字母;传输模块,将所述关键字数据异步传输给服务器端;以及服务器端,接收所述关键字数据,判断所述关键字的类型,若为汉字,则自所述服务器端的数据库查询数据,并将查询结果透过所述传输模块传回至所述用户端,若为字母,则所述服务器端判断所述数据库中是否存在临时表,若是则自该临时表查询数据,并将查询结果透过所述传输模块传回至所述用户端,若不存在所述临时表,则创建临时表,并将所述数据库中的原始数据取出转换成字母数据储存在所述临时表中,之后自所创建临时表查询数据并透过所述传输模块返回给所述用户端。2.如权利要求1所述的数据搜索系统,其特征在于:所述服务器端还包括:判断模块,用于判断所述关键字的类型;创建模块,用于创建所述临时表;转换模块,用于将所述数据库中的原始数据取出转换成字母数据储存在所述临时表中;以及查询模块,用于自所述数据库或所述临时表查询与所述关键字匹配的数据。3.如权利要求1所述的数据搜索系统,其特征在于:所述服务器端还包括数据处理模块,用于对所述传输模块所传输的关键字数据进行处理以去除不安全字符。4.如权利要求1所述的数据搜索系统,其特征在于:所述传输模块是利...
【专利技术属性】
技术研发人员:陈峰,
申请(专利权)人:上海斐讯数据通信技术有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。