Lucene 4.4范围查询
来源:互联网 发布:导弹艇积木淘宝 编辑:程序博客网 时间:2024/04/30 12:16
package com.zsj.test;
import java.io.File;
import java.io.IOException;
import org.apache.lucene.document.Document;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.Term;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.TermRangeQuery;
import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
/**
* 测试Lucene 4.4范围搜索
* 实现需求描述:
* 可以实现基于时间的范围查询比如查询
* 191110到198717之间的值
* @author hadoop
*
*/
public class LuceneRangSearcher {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String dir = "D:\\user";
try {
Directory directory = FSDirectory.open(new File(dir));
@SuppressWarnings("deprecation")
IndexReader reader = IndexReader.open(directory);
IndexSearcher indexSearcher = new IndexSearcher(reader);
/**
* 范围搜索
*/
Term begin = new Term("datetime", "191111");
Term end = new Term("datetime", "198108");
/**
* 参数Boolean值说明
* false表示不包含 191111
* true 表示包含198108
* 这两个Boolean表示查询结果
* 是否包含lower,upper两个临界值
*/
TermRangeQuery termRangeQuery = new TermRangeQuery("datetime",
begin.bytes(), end.bytes(), false, true);
TopDocs topDocs = indexSearcher.search(termRangeQuery, 10);
ScoreDoc scoreDocs[] = topDocs.scoreDocs;
for (int i = 0; i < scoreDocs.length; i++) {
Document document = indexSearcher.doc(scoreDocs[i].doc);
System.out.println(document.get("id"));
System.out.println(document.get("name"));
System.out.println(document.get("text"));
System.out.println(document.get("datetime"));
}
directory.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
- Lucene 4.4范围查询
- Lucene范围查询RangeQuery
- lucene的学习----范围查询
- lucene 范围查询及其原理
- lucene学习记录(3) - 结果排序, 范围查询
- Lucene之模糊、精确、匹配、范围、多条件查询-yellowcong
- lucene模糊查询 精确查询 包含关键字 不包含关键字 包含全部关键字 范围查询 模糊查询 通配符查询 lucene各种查询实现示例
- Elasticsearch源码分析七--调用Lucene查询接口之范围查询
- lucene查询之 NumericRangeQuery 可以根据数值范围查询。及代码示例
- Lucene中的范围搜索
- 范围查询
- 范围查询
- Lucene查询
- lucene查询
- lucene+查询
- lucene查询
- lucene---查询
- lucene精确范围和数字
- 表格添加右键菜单功能
- adb shell 命令详解
- 约瑟夫环
- 选择排序和冒泡排序的学习
- 判断单据是否在工作流中运行
- Lucene 4.4范围查询
- 【有效降低电脑噪音的五个小技巧】
- 系统自带的文件拷贝、移动、删除和重命名操作
- #include与直接写class加类名有何区别
- hibernate 注解关系
- Incompatible namespaceIDs
- 判断是否存在下游单据
- Oracle Database 11g SQL 开发指南学习笔记:高级查询
- js隐藏和显示表格