广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州Lucene HelloWorld之完整代码_北大青鸟IT学校

作者:邓华发布时间:2021-05-09分类:Java技术浏览:1008


导读:Java是现在非常主流的编程语言之一,很多人想转行学习Java。那么下面惠州北大青鸟老师给大家分享Lucene HelloWorld的完整代码,希望对大家学习Java有帮助。

Java是现在非常主流的编程语言之一,很多人想转行学习Java。那么下面惠州北大青鸟老师给大家分享Lucene HelloWorld的完整代码,希望对大家学习Java有帮助。

import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.queryparser.classic.ParseException;
import org.apache.lucene.queryparser.classic.QueryParser;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.TopScoreDocCollector;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.RAMDirectory;
import org.apache.lucene.util.Version;

import java.io.IOException;public class Main {
@SuppressWarnings("deprecation")public static void main(String[] args) throws IOException, ParseException {
 
   StandardAnalyzer analyzer = new StandardAnalyzer(Version.LATEST);
   Directory index = new RAMDirectory();

   IndexWriterConfig config = new IndexWriterConfig(Version.LATEST, analyzer);

   IndexWriter w = new IndexWriter(index, config);
   addDoc(w, "Lucene in Action", "1");
   addDoc(w, "Lucene for Dummies", "2");
   addDoc(w, "Java", "3");
   addDoc(w, "Oracle", "4");
   w.close();

   String querystr = "lucene";

   Query q = new QueryParser(Version.LATEST, "title", analyzer).parse(querystr);

   int hitsPerPage = 10;
   IndexReader reader = DirectoryReader.open(index);
   IndexSearcher searcher = new IndexSearcher(reader);
   TopScoreDocCollector collector = TopScoreDocCollector.create(hitsPerPage, true);
   searcher.search(q, collector);
   ScoreDoc[] hits = collector.topDocs().scoreDocs;
   
   System.out.println("Found " + hits.length + " hits.");    for(int i=0;i<hits.length;++i) {
     int docId = hits[i].doc;
     Document d = searcher.doc(docId);
     System.out.println(d.get("isbn") );
     System.out.println(d.get("title") );
   }
   reader.close();
 }  private static void addDoc(IndexWriter w, String title, String isbn) throws IOException {
   Document doc = new Document();
   doc.add(new TextField("title", title, Field.Store.YES));
   doc.add(new StringField("isbn", isbn, Field.Store.YES));
   w.addDocument(doc);
 }
}

更多Java资讯关注网站动态,或者来惠州北大青鸟新方舟校区了解一下。

java2.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表