最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

使用Lucene2.31索引Oracle10g的数据库

来源:懂视网 责编:小采 时间:2020-11-09 11:50:55
文档

使用Lucene2.31索引Oracle10g的数据库

使用Lucene2.31索引Oracle10g的数据库:使用Lucene 2.31 索引 Oracle 10g的数据库 1,使用主要技术:Lucene 2.3.1IK_CAnalyzer 1.4 中文分词HtmlParser 1.6 HTML文件/文本解析器 缺点:不能忽略的内容 2,其他实现方法: 每天做对每类做增量索引 索引内容:类型,URL,TEXT内容,标题,
推荐度:
导读使用Lucene2.31索引Oracle10g的数据库:使用Lucene 2.31 索引 Oracle 10g的数据库 1,使用主要技术:Lucene 2.3.1IK_CAnalyzer 1.4 中文分词HtmlParser 1.6 HTML文件/文本解析器 缺点:不能忽略的内容 2,其他实现方法: 每天做对每类做增量索引 索引内容:类型,URL,TEXT内容,标题,

使用Lucene 2.31 索引 Oracle 10g的数据库

1,使用主要技术:
Lucene 2.3.1
IK_CAnalyzer 1.4 中文分词
HtmlParser 1.6 HTML文件/文本解析器 缺点:不能忽略的内容


2,其他实现方法:

每天做对每类做增量索引 索引内容:类型,URL,TEXT内容,标题,作者,时间。

3,在Oracle 10g上建表:

-- Create table
create table IZ_SEARCH_ENGINE
(
ID NUMBER not null,
INDEX_DIR VARCHAR2(50),
TYPE VARCHAR2(500), 类型
TYPE_DESC VARCHAR2(50), 类型注释
TABLE_MAXVALUE VARCHAR2(50), 某表最大值
TABLE_SQLS CLOB, (最某表没有被索引的SQL语句,如select .... from XXX where id>#ID# , #ID# 取自TABLE_MAXVALUE )
STATUS VARCHAR2(20) default 'offline', 暂时无用
TYPE_TRUETYPE VARCHAR2(50) 暂时无用
)

4,,建立索引的JAVA关键代码:

String INDEX_DIR = “/home/xue24_index_book”; //指定索引目录
IndexWriter writer = new IndexWriter(INDEX_DIR, new IK_CAnalyzer(), true); //准备索引区,并指定分词分析器
Document doc = new Document(); //实例化新document
doc.add(new Field(“type”, “社区”, Field.Store.YES, Field.Index.TOKENIZED)); //为document设置字段:type
doc.add(new Field(“title”, “标题标题” Field.Store.YES, Field.Index.TOKENIZED)); //为document设置字段:title
writer.addDocument(doc); //将该document加入索引目录
writer.optimize(); //优化
writer.close(); //关闭索引

5,搜索的JSP关键代码:

String INDEX_DIR_BOOK = "/home/xue24_index/book";
String INDEX_DIR_BBS = "/home/xue24_index/bbs";

Searcher[] searchers=new Searcher[2];
searchers[0] = new IndexSearcher(INDEX_DIR_BOOK);
searchers[1] = new IndexSearcher(INDEX_DIR_BBS);

Searcher searcher = new MultiSearcher(searchers);
MultiFieldQueryParser queryParser = new MultiFieldQueryParser(new String[] {"title","content","author" }, new IK_CAnalyzer());
Query query = queryParser.parse(keyword); //分析查询

Hits hits = searcher.search(query);// 搜索索引
out.println(“共找到结果:”+hits.length());
for(int i=0;i Document doc = hits.doc(i);
out.println(“标题:” +doc.get("title") );
}


6,再写一个linux cron 定期执行,或用quartz插件来完成增量索引。

Lucene 的详细介绍:请点这里
Lucene 的下载地址:请点这里

linux

文档

使用Lucene2.31索引Oracle10g的数据库

使用Lucene2.31索引Oracle10g的数据库:使用Lucene 2.31 索引 Oracle 10g的数据库 1,使用主要技术:Lucene 2.3.1IK_CAnalyzer 1.4 中文分词HtmlParser 1.6 HTML文件/文本解析器 缺点:不能忽略的内容 2,其他实现方法: 每天做对每类做增量索引 索引内容:类型,URL,TEXT内容,标题,
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top