<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>一个程序猿 &#187; lucene</title>
	<atom:link href="http://www.sunboyu.cn/tag/lucene/feed" rel="self" type="application/rss+xml" />
	<link>http://www.sunboyu.cn</link>
	<description>时光不会倒流,脚步总要前进</description>
	<pubDate>Tue, 31 Jan 2012 10:50:34 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>discuz全文检索lucene解决方案图例</title>
		<link>http://www.sunboyu.cn/2010/12/17/discuz%e5%85%a8%e6%96%87%e6%a3%80%e7%b4%a2lucene%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88%e5%9b%be%e4%be%8b.shtml</link>
		<comments>http://www.sunboyu.cn/2010/12/17/discuz%e5%85%a8%e6%96%87%e6%a3%80%e7%b4%a2lucene%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88%e5%9b%be%e4%be%8b.shtml#comments</comments>
		<pubDate>Fri, 17 Dec 2010 03:17:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[discuz]]></category>

		<category><![CDATA[lucene]]></category>

		<guid isPermaLink="false">http://www.sunboyu.cn/?p=1347</guid>
		<description><![CDATA[
已经全部调试通过，正在往一个线上环境上部署。文档也在敢写之中，谢谢关注。
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.sunboyu.cn/upfiles/2010/12/discuze8aebae59d9be6909clucenee696b9e6a188e88d89e59bbe.jpg"><img src="http://www.sunboyu.cn/upfiles/2010/12/discuze8aebae59d9be6909clucenee696b9e6a188e88d89e59bbe-300x199.jpg" alt="discuz论坛搜索方案" title="discuz论坛搜索方案" width="300" height="199" class="aligncenter size-medium wp-image-1348" /></a></p>
<p>已经全部调试通过，正在往一个线上环境上部署。文档也在敢写之中，谢谢关注。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sunboyu.cn/2010/12/17/discuz%e5%85%a8%e6%96%87%e6%a3%80%e7%b4%a2lucene%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88%e5%9b%be%e4%be%8b.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>WordPress使用Lucene进行搜索</title>
		<link>http://www.sunboyu.cn/2008/10/18/wordpress%e4%bd%bf%e7%94%a8lucene%e8%bf%9b%e8%a1%8c%e6%90%9c%e7%b4%a2.shtml</link>
		<comments>http://www.sunboyu.cn/2008/10/18/wordpress%e4%bd%bf%e7%94%a8lucene%e8%bf%9b%e8%a1%8c%e6%90%9c%e7%b4%a2.shtml#comments</comments>
		<pubDate>Sat, 18 Oct 2008 05:52:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[lucene]]></category>

		<category><![CDATA[search]]></category>

		<guid isPermaLink="false">http://www.sunboyu.cn/?p=354</guid>
		<description><![CDATA[接上篇，我们使用Lucene Document Field IndexWrite 等方法创建了索引，现在，使用内建的搜索的方法进行检索。
代码如下：
import java.io.*;
import org.apache.lucene.index.Term;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.analysis.*;
import org.apache.lucene.queryParser.QueryParser;
import org.apache.lucene.search.*;
&#160;
public class Search
{
public static void main( String argv[] ) throws Exception
{
IndexReader reader = IndexReader.open(&#34;./index&#34;);
Searcher searcher = new IndexSearcher(reader);
SimpleAnalyzeranalyzer = new SimpleAnalyzer();
QueryParser parser = new QueryParser(&#34;post_content&#34;, analyzer);
Query query = parser.parse( argv[0] );
Hits hits = searcher.search(query);
System.out.println(hits.length() + &#34;个结果&#34;);
for(int i=0;i
{
System.out.println(hits.doc(i).get(&#34;guid&#34;));
}
}
}
编译后，我们在命令行进行查询：
E:\java>java Search php
40个结果
http://www.sunboyu.cn/?p=332
http://www.sunboyu.cn/?p=164
http://www.sunboyu.cn/?p=213
http://www.sunboyu.cn/?p=123
http://www.sunboyu.cn/?p=124
http://www.sunboyu.cn/?p=180
http://www.sunboyu.cn/?p=283
http://www.sunboyu.cn/?p=282
http://www.sunboyu.cn/?p=234
http://www.sunboyu.cn/?p=53
http://www.sunboyu.cn/?p=159
http://www.sunboyu.cn/?p=235
http://www.sunboyu.cn/?p=221
http://www.sunboyu.cn/?p=73
http://www.sunboyu.cn/?p=11
http://www.sunboyu.cn/?p=51
http://www.sunboyu.cn/?p=240
http://www.sunboyu.cn/?p=196
http://www.sunboyu.cn/?p=52
http://www.sunboyu.cn/?p=308
http://www.sunboyu.cn/?p=298
http://www.sunboyu.cn/?p=9
http://www.sunboyu.cn/?page_id=38
http://www.sunboyu.cn/?p=236
http://www.sunboyu.cn/?p=320
http://www.sunboyu.cn/?p=141
http://www.sunboyu.cn/?p=78
http://www.sunboyu.cn/?p=291
http://www.sunboyu.cn/?p=218
http://www.sunboyu.cn/?p=154
http://www.sunboyu.cn/?p=121
http://www.sunboyu.cn/?p=200
http://www.sunboyu.cn/?p=244
http://www.sunboyu.cn/?p=280
http://www.sunboyu.cn/?page_id=112
http://www.sunboyu.cn/?p=288
http://www.sunboyu.cn/?p=292
http://www.sunboyu.cn/?p=20
http://www.sunboyu.cn/?p=130
http://www.sunboyu.cn/?p=87
E:\java>
可以看到，当我们搜索关键词“php”，返回了所有存在php关键词的链接。
当然，这个只是个简单的演示，在创建索引的时候，我们使用了SimpleAnalyzer的方法，这个方法对中文，其实就是基于单字的分词，对于中文信息检索基本是没有意义的。Lucene提供了开发的源代码，因为，我们可以很方便得为其附加我们自己的中文分词方法。
]]></description>
			<content:encoded><![CDATA[<p>接上篇，我们使用Lucene Document Field IndexWrite 等方法创建了索引，现在，使用内建的搜索的方法进行检索。<br />
代码如下：</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline">import java.io.*;</li>
<li>import org.apache.lucene.index.Term;</li>
<li>import org.apache.lucene.index.IndexReader;</li>
<li>import org.apache.lucene.analysis.*;</li>
<li>import org.apache.lucene.queryParser.QueryParser;</li>
<li>import org.apache.lucene.search.*;</li>
<li>&nbsp;</li>
<li>public class Search</li>
<li>{</li>
<li>public static void main( String argv[] ) throws Exception</li>
<li>{</li>
<li>IndexReader reader = IndexReader.open(&quot;./index&quot;);</li>
<li>Searcher searcher = new IndexSearcher(reader);</li>
<li>SimpleAnalyzeranalyzer = new SimpleAnalyzer();</li>
<li>QueryParser parser = new QueryParser(&quot;post_content&quot;, analyzer);</li>
<li>Query query = parser.parse( argv[0] );</li>
<li>Hits hits = searcher.search(query);</li>
<li>System.out.println(hits.length() + &quot;个结果&quot;);</li>
<li>for(int i=0;i</li>
<li>{</li>
<li>System.out.println(hits.doc(i).get(&quot;guid&quot;));</li>
<li>}</li>
<li>}</li>
<li>}</li></ol></div>
<p>编译后，我们在命令行进行查询：</p>
<p>E:\java>java Search php<br />
40个结果<br />
http://www.sunboyu.cn/?p=332<br />
http://www.sunboyu.cn/?p=164<br />
http://www.sunboyu.cn/?p=213<br />
http://www.sunboyu.cn/?p=123<br />
http://www.sunboyu.cn/?p=124<br />
http://www.sunboyu.cn/?p=180<br />
http://www.sunboyu.cn/?p=283<br />
http://www.sunboyu.cn/?p=282<br />
http://www.sunboyu.cn/?p=234<br />
http://www.sunboyu.cn/?p=53<br />
http://www.sunboyu.cn/?p=159<br />
http://www.sunboyu.cn/?p=235<br />
http://www.sunboyu.cn/?p=221<br />
http://www.sunboyu.cn/?p=73<br />
http://www.sunboyu.cn/?p=11<br />
http://www.sunboyu.cn/?p=51<br />
http://www.sunboyu.cn/?p=240<br />
http://www.sunboyu.cn/?p=196<br />
http://www.sunboyu.cn/?p=52<br />
http://www.sunboyu.cn/?p=308<br />
http://www.sunboyu.cn/?p=298<br />
http://www.sunboyu.cn/?p=9<br />
http://www.sunboyu.cn/?page_id=38<br />
http://www.sunboyu.cn/?p=236<br />
http://www.sunboyu.cn/?p=320<br />
http://www.sunboyu.cn/?p=141<br />
http://www.sunboyu.cn/?p=78<br />
http://www.sunboyu.cn/?p=291<br />
http://www.sunboyu.cn/?p=218<br />
http://www.sunboyu.cn/?p=154<br />
http://www.sunboyu.cn/?p=121<br />
http://www.sunboyu.cn/?p=200<br />
http://www.sunboyu.cn/?p=244<br />
http://www.sunboyu.cn/?p=280<br />
http://www.sunboyu.cn/?page_id=112<br />
http://www.sunboyu.cn/?p=288<br />
http://www.sunboyu.cn/?p=292<br />
http://www.sunboyu.cn/?p=20<br />
http://www.sunboyu.cn/?p=130<br />
http://www.sunboyu.cn/?p=87</p>
<p>E:\java><br />
可以看到，当我们搜索关键词“php”，返回了所有存在php关键词的链接。</p>
<p>当然，这个只是个简单的演示，在创建索引的时候，我们使用了SimpleAnalyzer的方法，这个方法对中文，其实就是基于单字的分词，对于中文信息检索基本是没有意义的。Lucene提供了开发的源代码，因为，我们可以很方便得为其附加我们自己的中文分词方法。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sunboyu.cn/2008/10/18/wordpress%e4%bd%bf%e7%94%a8lucene%e8%bf%9b%e8%a1%8c%e6%90%9c%e7%b4%a2.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>Lucene创建Document代码部分-循序渐进学Lucene</title>
		<link>http://www.sunboyu.cn/2008/10/08/lucene%e5%88%9b%e5%bb%badocument%e4%bb%a3%e7%a0%81%e9%83%a8%e5%88%86-%e5%be%aa%e5%ba%8f%e6%b8%90%e8%bf%9b%e5%ad%a6lucene.shtml</link>
		<comments>http://www.sunboyu.cn/2008/10/08/lucene%e5%88%9b%e5%bb%badocument%e4%bb%a3%e7%a0%81%e9%83%a8%e5%88%86-%e5%be%aa%e5%ba%8f%e6%b8%90%e8%bf%9b%e5%ad%a6lucene.shtml#comments</comments>
		<pubDate>Wed, 08 Oct 2008 10:47:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[document]]></category>

		<category><![CDATA[lucene]]></category>

		<guid isPermaLink="false">http://www.sunboyu.cn/?p=337</guid>
		<description><![CDATA[import java.io.*;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.analysis.SimpleAnalyzer;
public class Index
{
	public static void main( String args[] )
	{
		Document doc = new Document();
		//注释1
		Field f1 = new Field(&#34;name1&#34;,&#34;value1&#34;,Field.Store.YES,Field.Index.TOKENIZED);
		Field f2 = new Field(&#34;name2&#34;,&#34;value2&#34;,Field.Store.YES,Field.Index.TOKENIZED);
		doc.add( f1 );
		doc.add( f2 );
		try
		{
			IndexWriter writer = new IndexWriter( &#34;./&#34; , new SimpleAnalyzer() , true );
			writer.addDocument( doc );
			writer.close();
		}
		catch (Exception e)
		{
&#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline">import java.io.*;</li>
<li>import org.apache.lucene.document.Document;</li>
<li>import org.apache.lucene.document.Field;</li>
<li>import org.apache.lucene.index.IndexWriter;</li>
<li>import org.apache.lucene.analysis.SimpleAnalyzer;</li>
<li>public class Index</li>
<li>{</li>
<li>	public static void main( String args[] )</li>
<li>	{</li>
<li>		Document doc = new Document();</li>
<li>		//注释1</li>
<li>		Field f1 = new Field(&quot;name1&quot;,&quot;value1&quot;,Field.Store.YES,Field.Index.TOKENIZED);</li>
<li>		Field f2 = new Field(&quot;name2&quot;,&quot;value2&quot;,Field.Store.YES,Field.Index.TOKENIZED);</li>
<li>		doc.add( f1 );</li>
<li>		doc.add( f2 );</li>
<li>		try</li>
<li>		{</li>
<li>			IndexWriter writer = new IndexWriter( &quot;./&quot; , new SimpleAnalyzer() , true );</li>
<li>			writer.addDocument( doc );</li>
<li>			writer.close();</li>
<li>		}</li>
<li>		catch (Exception e)</li>
<li>		{</li>
<li>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; e.printStackTrace(); </li>
<li>		}</li>
<li>	}</li>
<li>}</li></ol></div>
<p>注释1：Field方法的在2.0.0版本中有5种方法，在2.3.2中增加到了7种，详细用法请参阅官方文档<br />
http://lucene.apache.org/java/2_0_0/api/org/apache/lucene/document/Field.html<br />
http://lucene.apache.org/java/2_3_2/api/org/apache/lucene/document/Field.html</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sunboyu.cn/2008/10/08/lucene%e5%88%9b%e5%bb%badocument%e4%bb%a3%e7%a0%81%e9%83%a8%e5%88%86-%e5%be%aa%e5%ba%8f%e6%b8%90%e8%bf%9b%e5%ad%a6lucene.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>Lucene文档模型(Document)简解</title>
		<link>http://www.sunboyu.cn/2008/10/04/lucene%e6%96%87%e6%a1%a3%e6%a8%a1%e5%9e%8bdocument%e7%ae%80%e8%a7%a3.shtml</link>
		<comments>http://www.sunboyu.cn/2008/10/04/lucene%e6%96%87%e6%a1%a3%e6%a8%a1%e5%9e%8bdocument%e7%ae%80%e8%a7%a3.shtml#comments</comments>
		<pubDate>Sat, 04 Oct 2008 03:39:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<category><![CDATA[lucene]]></category>

		<category><![CDATA[简介]]></category>

		<guid isPermaLink="false">http://www.sunboyu.cn/?p=334</guid>
		<description><![CDATA[最近仔细研究了Lucene的文档模式，现用通俗语言来解释。
Lucene的索引，基本结构为 Index-&#62;Document-&#62;Field 这样可以构建一个非关系型二维结构，由不同field构成的一个Document，由不同的Document构成的Index。
Lucene的Field方法很丰富，在2.0版本以后，由三种Field类型增加到了5种，支持三种数据流的传入方式（字符串，读取，二进制传入），支持数据的存储，索引，分词。
而我们使用Lucene的主要功能在于分词和生成索引。具体应用待详细使用后介绍。
]]></description>
			<content:encoded><![CDATA[<p>最近仔细研究了Lucene的文档模式，现用通俗语言来解释。</p>
<p>Lucene的索引，基本结构为 Index-&gt;Document-&gt;Field 这样可以构建一个非关系型二维结构，由不同field构成的一个Document，由不同的Document构成的Index。</p>
<p>Lucene的Field方法很丰富，在2.0版本以后，由三种Field类型增加到了5种，支持三种数据流的传入方式（字符串，读取，二进制传入），支持数据的存储，索引，分词。</p>
<p>而我们使用Lucene的主要功能在于分词和生成索引。具体应用待详细使用后介绍。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sunboyu.cn/2008/10/04/lucene%e6%96%87%e6%a1%a3%e6%a8%a1%e5%9e%8bdocument%e7%ae%80%e8%a7%a3.shtml/feed</wfw:commentRss>
		</item>
		<item>
		<title>Nutch开源爬虫＋Lucene开源分词工具</title>
		<link>http://www.sunboyu.cn/2008/09/21/nutch%e5%bc%80%e6%ba%90%e7%88%ac%e8%99%ab%ef%bc%8blucene%e5%bc%80%e6%ba%90%e5%88%86%e8%af%8d%e5%b7%a5%e5%85%b7.shtml</link>
		<comments>http://www.sunboyu.cn/2008/09/21/nutch%e5%bc%80%e6%ba%90%e7%88%ac%e8%99%ab%ef%bc%8blucene%e5%bc%80%e6%ba%90%e5%88%86%e8%af%8d%e5%b7%a5%e5%85%b7.shtml#comments</comments>
		<pubDate>Sun, 21 Sep 2008 11:25:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[LINUX]]></category>

		<category><![CDATA[lucene]]></category>

		<category><![CDATA[nutch]]></category>

		<guid isPermaLink="false">http://www.sunboyu.cn/?p=324</guid>
		<description><![CDATA[Lucene是一个java写的开源分词工具，官方主页 http://lucene.apache.org/ 是apache下边的一个项目。
Lucene主要应用为分词并创建索引，提供高速的搜索服务，能讲海量的数据进行分词整理并生成轻量的数据包进行索引存储。
Lucene不是一个搜索引擎，但Lucene项目下有个子项目,Nutch爬虫。Nutch同样是基于Java的一个开源的爬虫，配合Lucene的分词索引功能，构建一个强大的开源搜索引擎。
官方Lucene已经更新到2.3.2版本http://svn.apache.org/repos/asf/lucene/java/tags/lucene_2_3_2/CHANGES.txt，Nutch已经更新到了0.9版本http://www.apache.org/dist/lucene/nutch/CHANGES-0.9.txt。
在测试中，我使用了Nutch0.7.2 http://apache.mirror.phpchina.com/lucene/nutch/nutch-0.7.2.tar.gz,比较稳定，而且对中文分词的效果也不错，能达到使用的水平，因为没有服务，只在本机做了简单测试，没有对效率进行评估，若哪位达人有闲置服务器，可借老朽一用。
]]></description>
			<content:encoded><![CDATA[<p>Lucene是一个java写的开源分词工具，官方主页 http://lucene.apache.org/ 是apache下边的一个项目。</p>
<p>Lucene主要应用为分词并创建索引，提供高速的搜索服务，能讲海量的数据进行分词整理并生成轻量的数据包进行索引存储。</p>
<p>Lucene不是一个搜索引擎，但Lucene项目下有个子项目,Nutch爬虫。Nutch同样是基于Java的一个开源的爬虫，配合Lucene的分词索引功能，构建一个强大的开源搜索引擎。</p>
<p>官方Lucene已经更新到2.3.2版本http://svn.apache.org/repos/asf/lucene/java/tags/lucene_2_3_2/CHANGES.txt，Nutch已经更新到了0.9版本http://www.apache.org/dist/lucene/nutch/CHANGES-0.9.txt。</p>
<p>在测试中，我使用了Nutch0.7.2 http://apache.mirror.phpchina.com/lucene/nutch/nutch-0.7.2.tar.gz,比较稳定，而且对中文分词的效果也不错，能达到使用的水平，因为没有服务，只在本机做了简单测试，没有对效率进行评估，若哪位达人有闲置服务器，可借老朽一用。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sunboyu.cn/2008/09/21/nutch%e5%bc%80%e6%ba%90%e7%88%ac%e8%99%ab%ef%bc%8blucene%e5%bc%80%e6%ba%90%e5%88%86%e8%af%8d%e5%b7%a5%e5%85%b7.shtml/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

