当前位置:首页 > Web开发 > 正文

123 ));document.add( new TextField("fieldContent"

2024-03-31 Web开发

1. Field域属性分类

添加文档的时候,我们文档傍边包罗多个域,那么域的类型是我们自界说的,上个案例使用的TextField域,那么这个域他会自动分词,然后存储
            我们要按照数据类型和数据的用途合理的选择合适的域
            Field类:
                StringField(fieldName,fieldValue,Stroe.YES/NO) 存储的数据类型为字符串,包罗索引,是否存储按照Stroe界说,不会颠末分析器
                StroeField(fieldName,fieldValue) 撑持多种数据类型,不分析,不成立索引,怎么破解qq空间相册密码 ,默认生存到索引库傍边
                LongPoint(name,value) 会进行分析,会创建索引,但是不会生存到索引库傍边
                TextField(fieldName,fieldValue,Stroe.YES/NO) 会分析,会创建索引,是否生存取决Store

2. 添加索引

@Test public void createDocument() throws IOException { //创建IndexWriter东西 参数一:索引库位置 参数二:指定配置 IndexWriter indexWriter=new IndexWriter(FSDirectory.open(new File("E:\\Y2学习\\Lucene\\索引库\\Index").toPath()), new IndexWriterConfig(new IKAnalyzer())); //创建一个文档东西 Document document=new Document(); document.add(new TextField("fieldName","hehe.txt", Field.Store.YES)); document.add(new StoredField("fieldPath","c://hehe.txt")); document.add(new LongPoint("fieldSize",123)); document.add(new StoredField("fieldSize",123)); document.add(new TextField("fieldContent","ojdbc14和ikanalyzer的maven找不到的解决步伐,手动颁布oJdbc14到maven货仓,手动颁布ikanalyzer到maven,同时本教程适用于所有jar包颁布 下载 IKAnalyzer结合Lucene使用和单独使用例子 简单性能测试 11-26 阅读数 1890 IKAnalyzer是一个开源基于JAVA语言的 .", Field.Store.YES)); //创建索引,将文档添加到索引库傍边 indexWriter.addDocument(document); //封锁 indexWriter.close(); }

技术图片

3. 改削索引:道理-先删除再添加

/** * 索引改削,改削fieldName域中关键词匹配到全文检索的文档 * @throws IOException */ @Test public void updateDocument() throws IOException { //创建IndexWriter东西 参数一:索引库位置 参数二:指定配置 IndexWriter indexWriter=new IndexWriter(FSDirectory.open(new File("E:\\Y2学习\\Lucene\\索引库\\Index").toPath()), new IndexWriterConfig(new IKAnalyzer())); //创建文档 Document document=new Document(); document.add(new TextField("fieldName","new.txt", Field.Store.YES)); document.add(new StoredField("fieldPath","c://new.txt")); document.add(new LongPoint("fieldSize",456)); document.add(new StoredField("fieldSize",456)); document.add(new TextField("fieldContent","改削fieldName为全文检索的文档,进行文档替换,先删除去fieldName为全文检索的两个文档,再添加一个fileName为new的新文档", Field.Store.YES)); //改削 参数一为条件 参数二为改削的文档值 indexWriter.updateDocument(new Term("fieldName","全文检索"),document); //封锁 indexWriter.close(); }

4.删除索引

4.1 删除全部:慎用

@Test public void deleteAllDocument() throws IOException { //创建IndexWriter东西 参数一:索引库位置 参数二:指定配置 IndexWriter indexWriter=new IndexWriter(FSDirectory.open(new File("E:\\Y2学习\\Lucene\\索引库\\Index").toPath()), new IndexWriterConfig(new IKAnalyzer())); //删除索引 indexWriter.deleteAll(); //封锁 indexWriter.close(); }

技术图片

4.2 按照域和关键词删除

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/29342.html