锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久综合伊人,在线播放视频一区,久热99视频在线观看http://www.aygfsteel.com/asdtiang/category/43556.html浜ゆ祦瀛︿範(fàn)JAVA zh-cnTue, 12 Jan 2010 10:37:15 GMTTue, 12 Jan 2010 10:37:15 GMT60lucene2.4 瀛︿範(fàn)絎旇1http://www.aygfsteel.com/asdtiang/articles/309215.htmlasdtiangasdtiangTue, 12 Jan 2010 10:10:00 GMThttp://www.aygfsteel.com/asdtiang/articles/309215.htmlhttp://www.aygfsteel.com/asdtiang/comments/309215.htmlhttp://www.aygfsteel.com/asdtiang/articles/309215.html#Feedback0http://www.aygfsteel.com/asdtiang/comments/commentRss/309215.htmlhttp://www.aygfsteel.com/asdtiang/services/trackbacks/309215.html緗戠珯瑕佺敤鎼滅儲鍔熻兘錛屾湰鏉ユ兂鐢⊿QL璇彞鏉ュ疄鐜幫紝鍚庢潵鎰熻娌′粈涔堟剰鎬濓紝騫跺紑濮嬭冭檻鐢↙UCENE,鍘誨畼緗戜笅杞戒簡2.9鐨勭増鏈紝鍙戠幇鏂頒笢瑗挎瘮杈冨錛屼簬鏃朵笅杞戒簡 2.4鐗堟湰.鐩告瘮浠ュ墠鐨勭増鏈湁浜涘彉鍖栥?br /> 棣栧厛寤虹珛Index:綾繪枃浠跺涓嬶細(xì)

import jeasy.analysis.MMAnalyzer;

import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.CorruptIndexException;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.store.LockObtainFailedException;

import com.lmsCard.www.bean.company.Company;
import com.lmsCard.www.tools.Init;
public class LuceneIndex {

private String INDEX_STORE_PATH;
private Analyzer analyzer;

public LuceneIndex(){
Init init
=Init.getInit();
init.readInfo();
INDEX_STORE_PATH
=init.LUCENE_INDEX;
System.out.println(INDEX_STORE_PATH);
analyzer 
= new StandardAnalyzer();
}
/////company 涓轟竴涓猙ean
public void createCompanyIndex(Company company, boolean b) {
try {
IndexWriter writer 
= new IndexWriter(INDEX_STORE_PATH + "/company",
analyzer, b, IndexWriter.MaxFieldLength.UNLIMITED);
System.out.println(INDEX_STORE_PATH
+"/company");
Document doc 
= new Document();
// //鍟嗗鍚嶇О
doc.add(new Field("companyName", company.getCompanyName(),
Field.Store.NO, Field.Index.ANALYZED));
// /鍟嗗綆浠?/span>
if (company.getInfo() == null) {
doc.add(
new Field("info",
company.getInfo() 
+ "www.lmscard.com", Field.Store.NO,
Field.Index.ANALYZED));
else {
doc.add(
new Field("info", company.getInfo(), Field.Store.NO,
Field.Index.ANALYZED));
}
// /鎶樻墸
doc.add(new Field("discount", company.getZhekou() + "",
Field.Store.YES, Field.Index.NOT_ANALYZED));
// //澶囨敞
if(company.getBeizhu()==null||company.getBeizhu().equals("")){
doc.add(
new Field("comment", company.getBeizhu()
+ "www.lmscard.com", Field.Store.NO, Field.Index.ANALYZED));
}
doc.add(
new Field("comment", company.getBeizhu()+"www.lmscard.com"
, Field.Store.YES, Field.Index.ANALYZED));

// ///鍟嗗緙栧彿
doc.add(new Field("companyId", company.getCompanyId(),
Field.Store.YES, Field.Index.NOT_ANALYZED));
// /鍟嗗鍦板潃
if(company.getCompanyAddress()==null)
{
doc.add(
new Field("address", company.getCompanyAddress()+"www.lmscard.com",
Field.Store.NO, Field.Index.ANALYZED));
}
else{
doc.add(
new Field("address", company.getCompanyAddress(),
Field.Store.YES, Field.Index.ANALYZED));
}

System.out.println(company.getCompanyId());
writer.addDocument(doc);
writer.close();

catch (CorruptIndexException e) {
// TODO Auto-generated catch block
e.printStackTrace();
catch (LockObtainFailedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

////寤虹珛涓涓悳绱㈢被錛?/span>
import java.util.ArrayList;
import java.util.List;

import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.queryParser.MultiFieldQueryParser;
import org.apache.lucene.search.BooleanClause;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.Searcher;
import org.apache.lucene.search.Sort;

import com.lmsCard.www.tools.Init;

public class LuceneSearch {
private Analyzer analyzer;
private String type;
private String INDEX_STORE_PATH;

public LuceneSearch() {

Init init 
= Init.getInit();
init.readInfo();
INDEX_STORE_PATH 
= init.LUCENE_INDEX;
System.out.println(INDEX_STORE_PATH);
analyzer 
= new StandardAnalyzer();
}

public List searchCompany(String keyWord, String type1) {
List l 
= new ArrayList();
if (type1 == null) {
this.type = "companyName";
}
try {

BooleanClause.Occur[] clauses 
= { BooleanClause.Occur.SHOULD,
BooleanClause.Occur.SHOULD, BooleanClause.Occur.SHOULD,
BooleanClause.Occur.SHOULD };
Searcher searcher 
= new IndexSearcher(INDEX_STORE_PATH + "/company");
System.out.println(INDEX_STORE_PATH 
+ "  ffff  " + type
+ " keyWord:" + keyWord);
Query query 
= MultiFieldQueryParser.parse(keyWord, new String[] {
"companyName""info""comment""address" }, clauses,
analyzer);
// 姝ゅ鍦?.0鍩虹涓婃湁鏀瑰姩錛屾澶勫繀欏諱紶鍏ヤ竴涓繑鍥炴潯鏁幫紝榪欓噷鐢╯earcher.maxDoc()琛ㄧず榪斿洖鎵鏈夋潯鏁般?/span>
Sort sort=new Sort("backMoney",true);
ScoreDoc[] docs 
= searcher.search(query, searcher.maxDoc()).scoreDocs;
System.out.println(docs.length 
+ "docs.length");
Document doc;
for (int i = 0; i < docs.length; i++) {
doc 
= searcher.doc(docs[i].doc);
l.add(doc.get(
"companyId"));
System.out.println(doc.get(
"companyId"));

}
catch (Exception e) {
e.printStackTrace();
}
return l;
}

}



asdtiang 2010-01-12 18:10 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 丹凤县| 富阳市| 巴青县| 松桃| 拉孜县| 康保县| 扶绥县| 大姚县| 宾阳县| 汉源县| 合江县| 峡江县| 济源市| 日照市| 龙海市| 大连市| 丹寨县| 黎平县| 贵溪市| 屯门区| 连州市| 连南| 望城县| 庆安县| 苗栗县| 松潘县| 保定市| 连江县| 潮安县| 萨嘎县| 永济市| 内乡县| 城固县| 阳原县| 黄浦区| 石棉县| 双柏县| 文昌市| 城固县| 双桥区| 靖西县|