lucene入门demo学习

           lucene自带的demo需要在命令行下运行,对于初次学习的人来说极为不变。对其demo进行了修改并附加中文注释,希望对喜爱lucene的人有所帮助,lucene的版本是最新的2.4.

           下面是修改后的IndexFiles,可以直接在IDE总运行。代码如下所示:

      

package com.exceljava.lucene;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.demo.FileDocument;
import org.apache.lucene.index.IndexWriter;
/**
* @author xjj email: exceljava@163.com description:建立索引
* @date Jan 5, 2009
*/
public class IndexFiles {
private IndexFiles() {
}
static final File INDEX_DIR = new File("exceljava");
// 指定要索引的目录
static final String DIR_PATH = "d:\\days";
public static void main(String[] args) {
indexWriter(INDEX_DIR,DIR_PATH);
}
/**
* function:索引创建
* @param file
* @param dirPath
* @date Jan 5, 2009
* @time 5:06:17 PM
*/
public static void indexWriter(File file,String dirPath){
// if (INDEX_DIR.exists()) {
// System.out.println(”索引目录’” + INDEX_DIR + “‘已经存在,请先删除该索引”);
// System.exit(1);
// }
final File docDir = new File(dirPath);
if (!docDir.exists() || !docDir.canRead()) {
System.out.println(”文档目录 ‘” + docDir.getAbsolutePath()
+ “‘不存在或不能读写”);
System.exit(1);
}
long start =System.currentTimeMillis();
try {
IndexWriter writer = new IndexWriter(file,
new StandardAnalyzer(), //
true,//这里的true表示重新建立索引,如果存在也将覆盖。false则表示如果存在索引则在现有基础上进行拓展
IndexWriter.MaxFieldLength.LIMITED);
System.out.println(”索引’” + INDEX_DIR + “‘…”);
indexDocs(writer, docDir);
//合并小索引文件并进行优化
writer.optimize();
writer.close();
long end =System.currentTimeMillis();
System.out.println(”共耗时:” + (end - start)+ “毫秒”);
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* function:检索目录,并调用创建索引函数进行索引创建,支持对目录内嵌目录进行检索
* @param writer
* @param file
* @throws IOException
* @date Jan 5, 2009
* @time 4:49:45 PM
*/
static void indexDocs(IndexWriter writer, File file) throws IOException {
if (file.canRead()) {
if (file.isDirectory()) {
String[] files = file.list();
if (files != null) {
//检索内嵌目录
for (int i = 0; i < files.length; i++) {
indexDocs(writer, new File(file, files[i]));
//new File(file, files[i])通过父路径file和子路径files[i]创建文件
}
}
} else {
System.out.println(”添加索引文件: ” + file);
try {
//向索引中添加构造好的文档
writer.addDocument(FileDocument.Document(file));
} catch (FileNotFoundException fe) {
fe.printStackTrace();
}
}
}
}

}

 

Lucene入门demo Lucene入门demo,lucene简单的应用 立即下载

相关推荐

使用cubeMX生成USB HID设备

本文主要介绍如何使用stm32开发板和cubeMX生成HID设备,供参考。

专注音频,高效工作,快乐生活! 971

lucene安装配置及demo调试

1.安装JDK 1.6。2.Java开发环境配置3.Tomcat安装(tomcat 6.0)解压下载的lucene-2.4.1.zip,可以看到lucene-core-2.4.1.jar和lucene-demos-2.4.1.jar这两个文件。本文解压目录为:D:/lucene-2.4.1。将lucene-core-2.4.1.jar和lucene-demos-2.4.

Mason's Blog 6072

Carla学习笔记(一)服务器跑carla本地显示窗口

其中host后替换为你的服务器IP,-carla-rpc-port和-p后为端口号,需要一致。python3 manual_control.py也可以替换为其他python脚本。因为电脑配置不够,所以在服务器跑carla,本地运行PythonAPI里的样例。把carla仓库的PythonAPI拷贝到本地,或者直接去官方里下载一下。

做题记录 4978

java lucene demo,Apache lucene demo运行

设置好JAVA的运行环境我用的是centos7,下面是系统_~/.bash_profile文件的配置# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then. ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/b...

weixin_42638139的博客 231

保姆级教程:在ROS Noetic下,手把手教你将自定义A*全局规划器打包成插件(附避坑指南)

本文提供了一份详细的ROS Noetic下自定义A*全局规划器插件开发指南,涵盖从环境准备、算法优化到插件配置与调试的全流程。通过实战案例和避坑技巧,帮助开发者高效实现机器人导航中的全局路径规划,特别适合需要优化ROS导航栈的开发者。

weixin_29168675的博客 285

WAVE格式

一.wave格式概述 Wave文件格式是用于多媒体文件存储的Microsoft RIFF(Resource Interchange FileFormat)的一个子集。每一个RIFF文件以一个文件头开始,后面是一系列数据块。Wave文件通常是包含“WAVE”块的RIFF文件。而该“WAVE”块由两个子块组成,称为“fmt”块。“fmt”块用于确定数据格式,并且“data”块包含实际的样本数据,

yejia1280的博客 4390

Lucene demo

一、Lucene 工具类 import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.index.DirectoryReader; import org.apache.lucene.

Be Like 871

Deep SHAP 深度学习模型的可解释性分析

Deep SHAP 算法是一种用于解释深度学习模型的技术, 该算法通过将每个特征的重要性与输出值相关联来进行解释。本博客对深度学习的模型可解释性进行了分析。

cnjs1994的博客 5121

java lucene demo,lucene自带的两个demo的运行测试方法

最近准备做个自己的blog,考虑到对文文章内容的搜索,于是决定通过lucene对文章进行全文搜索。以下是我的学习笔记。首先学习了中文java上的为自己的系统搞个全文搜索、车东的基于Java的全文索引引擎Lucene简介和竹笋炒肉的lucene学习笔记对lucene的原理有个一个全局的认识。下面是对lucene自带的两个demo的运行测试方法:一、FileIndex例子很简单。1、设置classpa...

weixin_29034963的博客 508

点云焊缝提取

本文介绍了一个基于PCL库的点云处理流程,包含三个核心模块:MLS平滑处理通过多项式拟合修正点云位置;差异提取通过双向匹配定位源/目标点云的非重叠区域;统计过滤剔除离群噪声点。该流程采用"平滑-筛选-净化"的通用思路,将复杂算法封装为可配置接口,实现了工业级点云预处理。文章重点分析了各模块的原理、PCL接口调用及参数设计逻辑,同时指出参数调优、算法扩展等深入探索方向,展现了PCL在点云处理中的模块化优势与实用价值。

weixin_45196569的博客 250

从原理到落地:Mamba-YOLOv8 全面实战指南(源码 + 训练 + 部署一次学会)

在目标检测领域,CNN与Transformer的较量从未停歇。本文提出一种革命性的架构——,将状态空间模型(SSM)首次引入YOLO框架。实验表明,该模型在COCO数据集上达到54.3% mAP@0.5,推理速度达89 FPS(RTX 4090),相比原版YOLOv8提升12.7%精度与23%速度。本文将完整揭示其技术原理与工程实现,助您掌握这一前沿技术。

FJN110的博客 121

Lucene初学Demo

不跟你多BB,直接上代码: 这个Demo是使用Maven构建的。 创建Lucene索引的Indexer类: package com.java.lucene; import java.io.File; import java.io.FileReader; import java.nio.file.Paths; import org.apache.lucene.analysis.Analyz

太年轻的博客 2622

通过python+openCV实现对图片中箭头方向的判断

摘要: 针对YOLOv8算法在箭头方向识别效果不佳的问题,提出了一种基于OpenCV的解决方案。该方法通过图像预处理、轮廓分析、几何特征提取(凸包、质心、外接矩形)和方向向量计算,准确判断箭头的上下左右方向。代码示例展示了从图像读取到方向识别的完整流程,并提供了优化建议(如调整二值化阈值、处理多轮廓)。该方案在Windows11+Python3.12+OpenCV环境下验证有效,适用于需要简单几何特征分析的箭头方向检测场景。

AnChenliang_1002的博客 703

Lucene学习一:入门级Demo,创建索引和查询高亮显示

Lucene入门级介绍demo尝试

z781582206的博客 383

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

全文检索技术Lucene入门和学习、与数据库数据结合的demo实现

背景:其实,我前两年就开始接触过Lucene了,当时是准备把做一个内容管理系统CMS,那么搜索这块就需要使用到Lucene技术了,当时,由于项目经费问题,技术方案确定,项目没有立项,最后没能实现..       前个月,现在的这家公司需要实现有个检索的功能,我当时就想到了Lucene技术, 我就去确认数据量有多大?,检索的范围有多大?精确度等,.才700多条数据,而且还只是检索一个字段...

z69183787的专栏 1903

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Lucene从入门到使用

第一节:lucene入门阶段 1.什么是Lucene?         Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。——《百度百科》 2.全文...

Null的博客 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java lucene demo_一个完整的Lucene搜索引擎例子demo详解

一.导入相应的jar包KAnalyzer3.2.0Stable.jarlucene-analyzers-3.0.1.jarlucene-core-3.0.1.jarlucene-highlighter-3.0.1.jarlucene-memory-3.0.1.jar二.写一个完整的demo1.创建一个实体DROP TABLE IF EXISTS `article`;CREATE TABLE `a...

weixin_35361584的博客 550

Lucene入门之--运行Lucene-demo

运行环境:  JDK 1.5    TOMCAT 5.5    Eclipse 3.0.1 解压lucene1.4.3 把luceneweb.war复制到tomcat的webapps目录,重新启动tomcat,就可以看到目录下多了一个luceneweb目录 新建一个index文件夹,位置不限,用来存放生成的索引文件。

俗人之家--专注于java相关技术 1万+

Lucene 3.0 学习(一)

最近因项目需要,开始学习Lucene。先从官网上下载了相关资源(Lucene3.0.1)。然后,上网搜索相关的入门指南、学习笔记等,想直接利用前辈们的经验迅速上手,但这些文档大都是基于2.X甚至更老的版本,与新版本并不兼容(Lucene的向下兼容似乎做得不是太好)。最后,还是通过Lucene自带的demo代码的分析及修改,对Lucene有了些初步的理解。这里把自己的心得作个总结,希望会对刚刚接触Lucene的人有所帮助,也希望能够和更多的Lucene爱好者一起交流学习,共同进步。

truekof97的专栏 952

lucene中demo的运行及配置

步骤一:下载并安装并配置 JDK ,在cmd命令框中输入java -version来查看JDK的版本,确定自己电脑上已经正确安装。 步骤二:  下载并配置 lucene, 下载请去: http://labs.renren.com/apache-mirror/lucene/java/ ,当前版本已经为3.6.0 我下载的 lucene 3.0.3为例,下载完后,我们在解压缩目录下可以看到下面

zhu_yanjie的专栏 3135

一个Lucene.Net的Demo

  今天突然想来看一下全文检索,于是就了解了一下Lucene.Net,然后把公司目前的产品表拿来练手,写了这么个Demo。   先看一下Demo的代码   public class ProductRepository { private Logger logger = new Logger(typeof(ProductRepository)); ...

weixin_30641999的博客 190

Lucene 4 Demo

转载出处:http://www.cnblogs.com/xing901022/p/3933675.html 讲解之前,先来分享一些资料     首先呢,学习任何一门新的亦或是旧的开源技术,百度其中一二是最简单的办法,先了解其中的大概,思想等等。这里就贡献一个讲解很到位的ppt。已经被我转成了PDF,便于搜藏。     其次,关于第一次编程初探,建议还是查看官方

wea111222333的博客 707

Lucene demo 调试笔记

Lucene demo 调试笔记运行环境配置:Jdk1.4 http://java.sun.com/j2ee/ Tomcat5 http://tomcat.apache.org/download-55.cgi lucene-1.4.3 http://www.apache.org/dyn/closer.cgi/jakarta/lucene/binaries/ 假设tomcat安装在C:/tomcat

wiregate的专栏 3047

lucene案例demo

1.github代码 https://github.com/mx342/luceneDemo 2.demo代码 import org.apache.commons.io.FileUtils; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.standard.StandardAna...

Buggggggg 296
上一篇: centos5.2免编译安装mysql5
下一篇: java时间之-java.util.Date解析
excellentjava
博客等级 码龄20年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值