成功将99收藏夹实现基于Lucene的站内全文搜索
2006-03-23 09:45
1001 查看
99收藏夹原来的站内收藏搜索是基于数据库的like%%语句,发现速度有点慢,于是想到用Lucene来实现站内收藏的按名字和共享收藏的连接标题来搜索的功能,昨天下午做好了,但是结果有点牵强人意。
首先我用Lucene把数据从数据库导出建立索引,代码如下,注:里面的ChinaTokene方法是调用www.sj110.com的中文分词组件
public class IntranetIndexer
2protected void buttonAddIndex_Click(object sender, EventArgs e)
2function showUserShellFav(obj,pageNumber)
2function onSelectUserShellFavCom(rel)
15{
16 hideLoad();
17 var pageIndexTd = document.getElementById("pageIndexTd");
18 var c = document.getElementById("contentTd");
19 var dtContent = rel.value.Tables[0];
20 var dtCount = rel.value.Tables[1];
21 pageIndexTd.innerHTML = "";
22 for(var r=0;r<dtCount.Rows.length;r++)
23 {
24 var cu = dtCount.Rows[r];
25 pageIndexTd.innerHTML += cu.html;
26 }
27 if(dtContent.Rows.length>0)
28 {
29 c.innerHTML = "";
30 if(PwqzcDream.MyDefault.IsLogin().value)
31 {
32 for(var row=0;row<dtContent.Rows.length;row++)
33 {
34 var cur = dtContent.Rows[row];
35 c.innerHTML+="<li><a type='"+cur.this_url+"' style='color:#0088e4;position:relative;cursor:pointer;' onmousedown='MouseDownToMove(this,event);' onmousemove='MouseMoveToMove(event);' onmouseup='MouseUpToMove(event);' onclick='openLink(this.type);'>"+cur.this_title+"</a>  <font color='red'>"+cur.this_name+"</font>收藏</li>";
36 }
37 }
38 else
39 {
40 for(var row=0;row<dtContent.Rows.length;row++)
41 {
42 var cur = dtContent.Rows[row];
43 c.innerHTML+="<li><a href='"+cur.this_url+"' style='color:#0088e4;' target='_blank'>"+cur.this_title+"</a>  <font color='red'>"+cur.this_name+"</font>收藏</li>";
44 }
45 }
46 }
47 else
48 {
49 c.innerHTML = "对不起,没有找到相关的收藏!";
50 }
51}
下面是按照用户名字搜索结果的抓图,当然,速度提升是很明显的
![](http://images.cnblogs.com/cnblogs_com/pwqzc/good1.gif)
下面是按照标题搜索的结果的抓图:
![](http://images.cnblogs.com/cnblogs_com/pwqzc/good2.gif)
同时也希望大家能够喜欢99收藏夹,谢谢大家!
首先我用Lucene把数据从数据库导出建立索引,代码如下,注:里面的ChinaTokene方法是调用www.sj110.com的中文分词组件
public class IntranetIndexer
2protected void buttonAddIndex_Click(object sender, EventArgs e)
2function showUserShellFav(obj,pageNumber)
2function onSelectUserShellFavCom(rel)
15{
16 hideLoad();
17 var pageIndexTd = document.getElementById("pageIndexTd");
18 var c = document.getElementById("contentTd");
19 var dtContent = rel.value.Tables[0];
20 var dtCount = rel.value.Tables[1];
21 pageIndexTd.innerHTML = "";
22 for(var r=0;r<dtCount.Rows.length;r++)
23 {
24 var cu = dtCount.Rows[r];
25 pageIndexTd.innerHTML += cu.html;
26 }
27 if(dtContent.Rows.length>0)
28 {
29 c.innerHTML = "";
30 if(PwqzcDream.MyDefault.IsLogin().value)
31 {
32 for(var row=0;row<dtContent.Rows.length;row++)
33 {
34 var cur = dtContent.Rows[row];
35 c.innerHTML+="<li><a type='"+cur.this_url+"' style='color:#0088e4;position:relative;cursor:pointer;' onmousedown='MouseDownToMove(this,event);' onmousemove='MouseMoveToMove(event);' onmouseup='MouseUpToMove(event);' onclick='openLink(this.type);'>"+cur.this_title+"</a>  <font color='red'>"+cur.this_name+"</font>收藏</li>";
36 }
37 }
38 else
39 {
40 for(var row=0;row<dtContent.Rows.length;row++)
41 {
42 var cur = dtContent.Rows[row];
43 c.innerHTML+="<li><a href='"+cur.this_url+"' style='color:#0088e4;' target='_blank'>"+cur.this_title+"</a>  <font color='red'>"+cur.this_name+"</font>收藏</li>";
44 }
45 }
46 }
47 else
48 {
49 c.innerHTML = "对不起,没有找到相关的收藏!";
50 }
51}
下面是按照用户名字搜索结果的抓图,当然,速度提升是很明显的
![](http://images.cnblogs.com/cnblogs_com/pwqzc/good1.gif)
下面是按照标题搜索的结果的抓图:
![](http://images.cnblogs.com/cnblogs_com/pwqzc/good2.gif)
同时也希望大家能够喜欢99收藏夹,谢谢大家!
相关文章推荐
- 站内搜索------仿造Baidu简单实现基于Lucene.net的全文检索的功能
- PHP中通过 JavaBridge+Lucene实现全文搜索站内搜索
- 记一次企业级爬虫系统升级改造(五):基于JieBaNet+Lucene.Net实现全文搜索
- 搜索引擎之全文搜索算法功能实现(基于Lucene)
- 基于lucene.net 和ICTCLAS2014的站内搜索的实现1
- 搜索引擎之全文搜索算法功能实现(基于Lucene)
- 记一次企业级爬虫系统升级改造(五):基于JieBaNet+Lucene.Net实现全文搜索
- 基于ASP.NET的lucene.net全文搜索实现步骤
- 基于lucene.net 和ICTCLAS2014的站内搜索的实现2
- 给你的网站加上站内搜索---Spring+Hibernate基于Compass(基于Lucene)实现
- lucene全文搜索之四:创建索引搜索器、6种文档搜索器实现以及搜索结果分析(结合IKAnalyzer分词器的搜索器)基于lucene5.5.3
- 基于ASP.NET的lucene.net全文搜索实现步骤
- 搜索引擎之全文搜索算法功能实现(基于Lucene)
- 基于lucene.net 和ICTCLAS2014的站内搜索的实现1
- lucene全文搜索之四:创建索引搜索器、6种文档搜索器实现以及搜索结果分析(结合IKAnalyzer分词器的搜索器)基于lucene5.5.3
- 记一次企业级爬虫系统升级改造(五):基于JieBaNet+Lucene.Net实现全文搜索
- 基于Lucene/XML的站内全文检索解决方案
- 基于Lucene/XML的站内全文检索解决方案
- 基于Lucene/XML的站内全文检索解决方案
- Lucene.net 实现全文搜索