免费论文网 首页

王力公告查询

时间:2018-11-09 10:37 来源:免费论文网

篇一:Lucene的多域查询、结果中查询、查询结果分页、高亮查询结果和结果评分

1.针对多个域的一次性查询

1.1.三种方案

使用lucene构造搜索引擎的时候,如果要针对多个域进行一次性查询,一般来说有三种方法:

第一种实现方法是创建多值的全包含域的文本进行索引,这个方案最简单。但是这个防范有个缺点:你不能直接对每个域的加权进行控制。

第二种方法是使用MultiFieldQueryParser,它是QueryParser的子类,它会在后台程序中实例化一个QueryParser对象,用来针对每个域进行查询表达式的解析,然后使用BooleanQuery将查询结果合并起来。当程序向BooleanQuery添加查询子句时,默认操作符OR被用于最简单的解析方法中。为了实现更好的控制,布尔操作符可以使用BooleanClause的常量指定给每个域。如果需要指定的话可以使用BooleanClause.Occur.MUST,如果禁止指定可以使用BooleanClause.Occur.MUST_NOT,或者普通情况为BooleanClause.Occur.SHOULD。下面的程序展示的是如何创建

MultiFieldQueryParser类的方法:

[java] view plaincopy

1. // 在这四个域中检索

2. String[] fields = { "phoneType", "name", "category", "price" };

3. Query query = new MultiFieldQueryParser(Version.LUCENE_36, fields, analyzer).parse(keyword);

第三种方法就是使用高级DisjunctionMaxQuery类,它会封装一个或者多个任意的查询,将匹配的文档进行OR操作。

1.2.方案选择

以上三种方案中,并不是第三种方案最好,也不是第一种方案就最差。哪种实现方式更适合你的应用程序呢?答案是“看情况”,因为这里存在一些取舍。全包含域是一个简单的解决方案——但这个方案只能对搜索结果进行简单的排序并且可能浪费磁盘空间(程序可能对同样的文本索引两次),但这个方案可能会获得最好的搜索性能。

MultiFieldQueryParser生成的BooleanQuery会计算所有查询所匹配的文档评分的总和(DisjunctionMaxQuery则只选取最大评分),然后它能够实现针对每个域的加权。你必须对以上3中解决方案都进行测试,同时需要一起考虑搜索性能和搜索相关性,然后再找出最佳方案。

2.在结果中查询

2.1.两种方案

在检索结果中再次进行检索,是一个很常见的需求,一般有两种方案可以选择:

①使用QueryFilter把第一个查询当作一个过滤器处理;

②用BooleanQuery把前后两个查询结合起来,并且使用BooleanClause.Occur.MUST。

针对第一种方法,我需要解释一下。QueryFilter在Lucene的2.x版本中是存在的,但是在3.x中,lucene的API中这个类已经被废弃了,无法再找到。如果你的项目使用的是lucene是3.x,但是你又一定要使用QueryFilter,那么你必须自己创建一个QueryFilter类,然后将2.x中QueryFilter的源代码复制过来。你可能会说,直接在工程中同时使用lucene2.x和3.x的核心jar文件不就行了吗。但遗憾的是,一个工程下,是不能同时使用不同版本的lucene的。

2.2.QueryFilter方案

上文已经说了,如果一定要使用QueryFilter,由于lucene2.x中没有QueryFilter的API,所以自己要写一个QueryFilter,QueryFilter的源代码在lucene2.x中是这样的:

[java] view plaincopy

1. import org.apache.lucene.search.CachingWrapperFilter;

2. import org.apache.lucene.search.Query;

3. import org.apache.lucene.search.QueryWrapperFilter;

4.

5. public class QueryFilter extends CachingWrapperFilter {

6.

7. /**

8.* Constructs a filter which only matches documents matching

9.* <code>query</code>.

10.*/

11. public QueryFilter(Query query) {

12.super(new QueryWrapperFilter(query));

13. }

14.

15. public boolean equals(Object o) {

16.return super.equals((QueryFilter) o);

17. }

18.

19. public int hashCode() {

20.return super.hashCode() ^ 0x923F64B9;

21. }

22. }

第一种方案的例子程序如下:

[java] view plaincopy

1. //简单实现对keyword的搜索

2. public static void search(String keyword) throws IOException, ParseException {

3. QueryParser queryParser = new QueryParser("content",new SimpleAnalyzer());

4. Query query = queryParser.parse(keyword.trim());

5. QueryFilter filter = new QueryFilter(query);

6. //检索

7. search(query, filter);

8. }

9.

10. //在搜索oldKeyword的结果集中搜索newKeyword

11. public static void searchInResult(String newKeyword, String oldKeyword) throws ParseException, IOException {

12. QueryParser queryParser = new QueryParser("content",new SimpleAnalyzer());

13. Query query = queryParser.parse(newKeyword.trim());

14. Query oldQuery = queryParser.parse(oldKeyword.trim());

15. QueryFilter oldFilter = new QueryFilter(oldQuery);

16. CachingWrapperFilter filter = new CachingWrapperFilter(oldFilter);

17. //检索

18. search(query, filter);

19. }

20.

21. private static void search(Query query, Filter filter) throws IOException, ParseException {

22. IndexSearcher ins = new IndexSearcher("d:/tesindex");

23. Hits hits = ins.search(query, filter);

24. for (int i = 0; i < hits.length(); i++) {

25.Document doc = hits.doc(i);

26.System.out.println(doc.get("content"));

27. }

28. }2.3.BooleanQuery方案

使用BooleanQuery来实现在结果中检索的过程是这样的,首先通过关键字keyword1正常检索,当用户需要在检索结果中再通过关键字keyword2检索的时候,通过构建BooleanQuery,来实现对在结果中检索的效果。这里要注意,这两个关键字都要使用BooleanClause.Occur.MUST。

[java] view plaincopy 1. //创建BooleanQuery

2. BooleanQuery booleanQuery = new BooleanQuery();

3. //多域检索,在这四个域中检索

4. String[] fields = { "phoneType", "name", "category","free" };

5. Query multiFieldQuery = new MultiFieldQueryParser(Version.LUCENE_36, fields, analyzer).parse(keyword);

6. //将multiFieldQuery添加到BooleanQuery中

7. booleanQuery.add(multiFieldQuery, BooleanClause.Occur.MUST);

8. //如果osKeyword不为空

9. if(osKeyword != null && !osKeyword.equals("") && !osKeyword.equals("null")){

10. TermQuery osQuery = new TermQuery(new Term("phoneType",osKeyword));

11. //将osQuery添加到BooleanQuery中

12. booleanQuery.add(osQuery, BooleanClause.Occur.MUST);

13. }

3.检索结果分页

篇二:优化网站搜索结果页的几个技巧

优化网站搜索结果页的几个技巧

网站搜索用户有较大的购买意向,所以我们要尽可能给他们提供最好的用户体验。

今天,小编就给大家分享几个网站搜索结果页的优化技巧。 保留搜索关键字,让用户编辑

一旦用户进入搜索结果页,许多网站通常是删掉搜索关键字,或者是仍然保留但是不能编辑。

保留搜索关键字,并且保持它的可编辑性,这样用户就可以添加关键词进行精准搜索,或者是更正他们的关键词。使用户在页面上可以再修改编辑,也降低了跳失率,增加转化机会。

图1

提供“无产品”搜索结果

当大多数网站以产品搜索为导向时,零售商们应该去发掘那些仅仅寻找信息的用户。

下面这家网站就以不同的标签来展示“无产品”的搜索结果。这是一个有用的方法来分类不同搜索者的信息。

图2

显示评价

用户评价可以影响和帮助购物者。

在网站搜索结果里显示用户评价可以帮助客户在选取产品时做出更快更合适的决定。

添加社会认同

除了用户评价,还可以在搜索结果里添加其他的社会认同形式。就像下面这个例子:

图3

上面图显示人们去看房及订房,说明这些酒店很热销。这个方法提醒客户要赶快预订才能争取到房间,这样就促进客户更快地做出决定。 让用户自己选择结果

一些人对价格比较敏感,想要先看到最便宜的产品,其他用户可能比较关注新品,等等。所以让他们根据喜好自己去选择。

图4

提供浏览量选项

对于怎样呈现搜索结果,没有固定答案。每页要显示几条产品,分页展示还是全在一页显示,网格还是列表视图?

直接的做法就是让他们自己选择。

例如下图,提供了充分的选项。

图5

学会怎样处置错误的拼写

用户们会拼错单词或者是在键入关键词时出些错误。最好的处理方法是预期客户的意思(可以的话),提供相关的搜索结果。

图6

避免零结果/搜索终止

肯定会出现产品没库存的情况,或者是客户的搜索词没法辨认。

这种情况下,最好给客户提供一些选项。下面这个网站给出了一些搜索建议,还展示了畅销款和新款产品。

采用快速浏览

现在有许多网站提供“quick view”选项,例如下面这家网站: 图7

这样,用户点击就能以覆盖图的形式看到一个小版本的产品页。这就为客户节省了时间,不用点进点出产品详情页了。

从数据中学习

网站搜索数据中有很多信息,它可以告诉你客户怎么使用的,以及网站的用户体验情况。利用这些信息,我们来提升对搜索结果的呈现。

例如,你可以看看点击深度。这可以显示网站搜索结果的相关性,还可以看到客户对搜索结果的满意度。

所以,如果客户进入页面查看了三四条产品,是不是说明客户在努力寻找他想要的东西呢?

数据也能用于识别畅销款常搜索款等等,这能帮助我们给客户做一些产品推荐。

零售商可以利用网站搜索结果,突出展示受欢迎产品,就像下面这家网站一样:

图8

采用大图

产品图片很重要,有时大图效果会更好。

零售商常常选用小图片以展示足够多的产品。但是大图能让客户看到更多产品细节,效果更好。

今天和大家分享了以上11个优化技巧,希望有所启发帮助。

篇三:中国知网使用常见问题集

中国知网使用常见问题集

1. 图书馆购买的电子资源数据库有哪些?

我院图书馆购买的电子资源数据库有:中国知网(CNKI)、万方数据资源、维普中文科技期刊数据库、超星数字图书馆、书生之家、读秀、EBSCO、Springer Link等众多国内外知名出版公司提供的大型数据库。

2. 中国知网(CNKI)对于学生写毕业论文有哪些帮助?

如果您是正在写毕业论文的学生,知网就是您最好的参谋。

首先,帮助选题。写论文,要取一个新颖的题目,来知网随意浏览,或许会有意外的收获。因为做选题不是冥思苦想,有时候从别人的片言只语中获得启发,打开自己另一扇研究大门。

其次,帮助收集资料。撰写论文,需要有充分的论据来证明您的观点,这时知网的期刊库、年鉴库、工具书库、博士硕士学位论文库、会议论文库、报纸库可以让您轻松获取详细资料和数据,让您观点独到,论据充分。

再次,答疑解惑非常方便。写论文、少不了遇到大量的专业术语,此时就需要CNKI工具书了。这里有2000部字典、辞典、百科全书、图谱、年鉴为您释疑解惑。

3. 我馆已购买的中国知网(CNKI)资源有哪些?

目前,我院购买来以下(CNKI)数据库:

1.中国期刊全文数据库

2.中国优秀硕士论文全文数据库

3.中国博士学位论文全文数据库

4.中国重要会议论文全文数据库

5.中国重要报纸全文数据库

6.中国年鉴网络出版总库

7.中国工具书网络出版总库

4. 在校园内如何登陆中国知网?

答:校园网IP范围内的计算机可以直接选择“教育网通入口”或“电信网入口”登录访问本馆购买的或试用的中国知网(CNKI)各数据库。

5. 在校外如何访问图书馆中国知网(CNKI)等电子资源?

答:在校园网外可通过二种方式(帐号和密码、图书馆的PROX软件)访问图书馆的中国知网(CNKI)资源。

校外访问中国知网(CNKI)资源请选择从“电信网通入口”进入。

帐号和密码:参见:/webmng/list.php?class=39&id=34435关于校外访问CNKI的相关说明。

PROX软件具体使用方法:参见“图书馆主页——常见问题——远程访问电子资源说明”。

6. 在中国知网(CNKI)里如何检索?

第一、选择您要检索的内容,如期刊、博士论文、工具书等,可以单选,也可以多选。第二、选择检索路径,如主题、篇名、关键词、作者等,并确定检索年度、排序方式、匹配方式等。

第三、输入您所关心问题的关键词、主题词等。

第四、根据检索结果进行检索策略的优化,或者进行高级检索。

具体操作细节参看“操作指南”。

7. 使用中国知网(CNKI)为什么,为什么要下载CNKI专用阅读器?

答:除了CNKI工具书可使用IE进行浏览、期刊可使用PDF浏览外,其它内容均需要CAJ阅读器才能浏览,否则无法打开原文。CAJ阅读器具在个人数字图书馆、书架、知识元链接、记笔记等强大的文献管理功能和学习功能,使用CAJ浏览器,便于用户更加高效的学习、研究。

8. CAJ浏览器如何下载?

答:在中国知网网站的任何页面点击“下载阅读器”,按提示即可轻松完成下载,注意:下载后一定要安装。

9. 如果浏览CAJ格式全文时出现空白页,怎么办?

答:请卸载计算机上的 CAJ全文浏览器 ,下载最新版的“ CAJ全文浏览器 ”专用软件重新进行安装。

10. 如何复制CAJ全文中的文本到word中进行排版。 可选择工具栏上的文本选择按钮,然后在相应的位置按鼠标左键拖动,选中的文本即可使用复制粘贴功能放到word文档中,另外也可以使用文件——另存为..,把caj文件另存为txt文档。

11. 如何把CAJ浏览器里的文章编辑到Word文档里?

方法一:编辑文字请点击CAJ阅读器菜单栏中“工具”,选择?文字识别?,选中文字后系统会显示识别结果提示发送到word文档;编辑图片请点击CAJ阅读器菜单栏中“工具”,选择?选择图像?,选中图片后复制粘贴到word文档。

方法二:整本编辑文章,请点击CAJ阅读器菜单栏中“文件”,选择“另存为”将文章保存为txt文本文件。

12. 在中国知网镜像站点上找到的文献,在打开全文时提示“找不到原文”,这是为什么?

答:中国知网主站点是日更新,我院中国知网镜像站点是南京大学镜像站,其比主站点更新稍迟,所以主站点上的文献是比我院使用的镜像站点上的文献多一些。

13. 为什么我的文章在中国知网里旧版里能找到,但是在新版里找不到?

答:在中国知网旧版的跨库检索的文献,没有对文章进行分类,统一收在16种学术资源里。所以只要中国知网收藏 均能在旧版通过跨库检索既可检索到。

新版的中国知网收录的资源分了几个版块:学术研究、党和国家大事、文化与生活、学习和教育、行业知识仓库。所以如果你在学术文献总库没有检索到的话,根据你文章的内容在其余的某个版块里可搜索得到。

14. 已经安装了浏览器,但打开CAJ文章是灰的,看不到内容?

这主要是由于程序有时候没有正常关闭,导致一些参数保存不正常所致,如果使用的是7.0.1以上版本,可以工具菜单中的“重置所有参数”来解决。如果还是7.0.0以下版本,需要先完成升级,再进行参数重置。注意:升级操作通过帮助菜单中的检查更新来完成,也可卸载当前版本再安装最新版本浏览器。

15. 我在本学院校园网用户,访问中国知网为什么还提示计算机IP不在访问权限

内?

答:多数情况是计算机设了代理服务器,一般取消代理服务器设置就可以正常访问中国知网。

16. 在中国知网可以进行专利查询吗?

答:可以查询中国专利。中国知网学术文献总库包含有中国专利全文数据库,可在中国

专利全文数据库里查询中国专利文。

17. 浏览全文时为什么有乱码或显示不出文字 ?

答: “CAJ全文浏览器”已经更新了多个版本,如果你使用的“CAJ全文浏览器”版本太旧,打开全文时就会出现乱码等现象,请关注并下载安装最新版“CAJ全文浏览器”专用软件。如果安装了最新浏览器还是显示不出文字(特别是学位论文),请注意查看页面背景默认颜色是否设置为“白色”,查看方法:CAJviewer工具->参数设置->颜色->页面默认颜色->背景颜色选“白色”,确定。

18. 某些全文不能打开,提示说“原文禁止上网”,怎样获取这类全文?

答:中国知网的某些期刊全文不能打开,是因为期刊出版社不允许将期刊全文在中国知网上发行,如果需要这些文章,可以请求文献传递。

19. 如何对检索结果进行筛选?

答:《中国学术网络出版总库》检索结果页面通过检索平台检索得到的检索结果,使用列表的形式展示出来。您可以对检索结果进行分组分析和排序分析。您可以对检索结果进行分组分析和排序分析,进行反复的精确筛选得到最终的检索结果。同时这里为您提供检索平台、统一导航,进行二次检索。

20. 如何对检索结果进行分组?

答:检索结果分组类型包括:学科类别、来源数据库、研究层次、文献来源、文献作者、作者单位、中文关键词、研究获得资助、发表年度。点击检索结果列表上方的分组名称,页面左侧分组栏目按照该分组类型展开分组具体内容。

21. 在中国知网检索,检索结果有几种排序?

答:数据库为检索结果提供了相关度排序以及发表时间,被引频次,下载频次,浏览频次等评价性排序。

相关度排序:根据检索结果与检索词相关程度进行排序。反映了结果文献与用户输入的检索词相关的程度,越相关越排前,通过相关度排序可找到文献内容与用户检索词最相关的文献;

发表时间:根据文献发表的时间先后排序。可以帮助学者评价文献的新旧,找到最新文献,找到库中最早出版的文献,实现学术跟踪,进行文献的系统调研。

下载频次:根据文献被下载次数进行排序。下载频次最多的文献往往是传播最广,最受欢迎,文献价值较高的文献,根据下载次数排序帮助学者找到那些高质量但未被注意到的文献类型,比如学位论文等。

被引频次:根据文献被引用次数进行排序。按“被引频次”排序帮助学者选出被学术同行认可的好文献以及好出版物。

22. 中国知网里,学科专业数字图书馆是什么?

答:专业数字图书馆是将中国知识资源总库中的学术文献资源分类汇编,形成168个一级学科专业数字图书馆,3000多个子专业数字图书馆,涵盖全部学科范围。

23. 如何进入专业馆?

答:第一步,在导航中点击进入学科专业数字图书馆首页:

途径一,在首页的“学术特色导航”栏目,点击学科专业数字图书馆,既可进入; 途径二,在页面头部导航菜单中点击“学科专业数字图书馆”,既可进入。

第二步,通过两种方式进入专业馆:

A.输入关键词检索学科专业馆或子专业馆

B.首页显示了168各学科专业数字图书馆,点击馆名既可进入相应馆。

24. 学科专业数字图书馆有哪些主要功能?

答:三项功能:学科专业馆检索功能、文献出版统计功能、专业馆主要情报服务。

25. 学科专业数字图书馆里提供的主要情报服务有哪些?

答:能更好的服务于各学科专业领域的用户,学科专业馆提供科有关学科领域全貌性的情报、信息服务。

情报、信息服务包括:a.学科国家级、省部级课题信息服务;b.一年内产出的重要学术成果;c.学术会议信息;d.最新学科报道;e.学科相关期刊;f.专业领域和相关领域;g.学科院士;h.学科博导;i.热点关键词;j.本专业交流区。

26. 中国知网有哪几种不同的检索方式?

答:中国知网检索平台提供了快速检索、标准检索、专业检索、引文检索、知网节检索、作者发问检索、科研基金检索、句子检索、知识元检索九种跨库检索方式,以及按文献来源检索方式,构成了功能先进,检索方式齐全的检索平台。

27. 期刊文献如何整刊检索,如何检索期刊的封面、目录及编辑部的联系方式?

答:1)首页 ki.net 下方‘期刊大全’检索到期刊的某期后,页面上‘目录页浏览’免费提供原刊的封面和目录加工。

28. 检索结果只能上页、下页,如何跳转页?

答:检索后选择“分组分析方法”按“来源数据库”分组后,单库显示结果,可以跳转页。

29. 下载时提示:“下载途径不合法”?

答:1)使用迅雷下载,请取消迅雷下载文章。

2)有可能是防火墙的防护功能造成的。如果安装的是诺顿防火墙,可以在屏幕右下方右击诺顿防火墙的图标,选择隐私控制,然后取消启用隐私保护的选项后重新下载。

30. 如何使用CAJ阅读器文本编辑中的‘高亮’‘删除线’‘下划线’等功能?

答:中国知网 加工的文章分为两种:数字版和扫描版。目前只有数字版文章可以使用文本编辑功能。点击CAJ阅读器菜单栏中“工具”,选择“文本选择”选中文章,然后点击菜单栏中“工具”,选择“文本编辑”中的相关功能。


王力公告查询
由:免费论文网互联网用户整理提供,链接地址:
http://m.csmayi.cn/meiwen/7729.html
转载请保留,谢谢!
相关阅读
最近更新
推荐专题