锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品一区二区免费看,欧美日韩成人综合在线一区二区,日韩亚洲欧美一区http://www.aygfsteel.com/asdtiang/category/43556.html浜ゆ祦瀛︿範JAVA zh-cnTue, 12 Jan 2010 10:37:15 GMTTue, 12 Jan 2010 10:37:15 GMT60- lucene2.4 瀛︿範絎旇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:綾繪枃浠跺涓嬶細
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;
}
}

]]>
主站蜘蛛池模板:
普定县|
晴隆县|
大余县|
东阳市|
江都市|
罗定市|
晴隆县|
桃源县|
屏东市|
淳安县|
旬邑县|
嘉荫县|
淮南市|
普洱|
奇台县|
南陵县|
丰县|
吉林市|
象山县|
乐东|
望谟县|
南充市|
怀化市|
绵竹市|
大冶市|
沽源县|
陕西省|
大庆市|
永昌县|
福安市|
贺兰县|
电白县|
吐鲁番市|
南宁市|
房产|
五寨县|
四会市|
黄陵县|
柏乡县|
罗田县|
长沙县|