前言:
本案例所引用的jar以及搜索的文档内容均在https://blog.csdn.net/qq_15076569/article/details/83031572基础之上进行
修改示例:
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.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.Term;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.util.Version;
import org.wltea.analyzer.lucene.IKAnalyzer;
import java.io.File;
import java.io.IOException;
/**
* 索引修改
*/
public class LunceneUpdate {
public static void main(String[] args) throws IOException {
/**
* 更新索引本质是先根据条件查询索引在删除索引,再创建索引
*/
FSDirectory fsDirectory = FSDirectory.open(new File("E://test"));
IndexWriterConfig indexWriterConfig = new IndexWriterConfig(Version.LATEST, new IKAnalyzer());
IndexWriter indexWriter = new IndexWriter(fsDirectory, indexWriterConfig);
Document document = new Document();
document.add(new StringField("id","112", Field.Store.YES));
document.add(new TextField("content", "随便写的枸杞日志内容软件", Field.Store.YES));
//执行更新
indexWriter.updateDocument(new Term("id","112"),document);
indexWriter.commit();
indexWriter.close();
}
}
删除示例:
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.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.Term;
import org.apache.lucene.search.NumericRangeQuery;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.util.Version;
import org.wltea.analyzer.lucene.IKAnalyzer;
import java.io.File;
import java.io.IOException;
/**
* 删除索引
*/
public class LunceneDelete {
public static void main(String[] args) throws IOException {
/**
* 删除索引本质是先根据条件查询索引在删除索引,再创建索引
*/
FSDirectory fsDirectory = FSDirectory.open(new File("E://test"));
IndexWriterConfig indexWriterConfig = new IndexWriterConfig(Version.LATEST, new IKAnalyzer());
IndexWriter indexWriter = new IndexWriter(fsDirectory, indexWriterConfig);
Document document = new Document();
document.add(new StringField("id","113", Field.Store.YES));
document.add(new TextField("content", "无所谓", Field.Store.YES));
indexWriter.addDocument(document);//写入索引
//执行删除
//1.条件删除
// indexWriter.deleteDocuments(new Term("id","113"));
// indexWriter.deleteDocuments(NumericRangeQuery.newIntRange("id",112,140,false,false));
//2.删除所有
indexWriter.deleteAll();
indexWriter.commit();
indexWriter.close();
}
}