存档

‘java’ 分类的存档

lucene3.0中使用MultiFieldQueryParser多字段查找

2010年3月16日 没有评论 2,013 次阅读

使用Lucene做全文检索,一般我们经常会在多个字段(域)中查找,而不一定关心在那个字段中包含需要查找的值.比如在搜索框中输入:亲亲宝宝 软件开发,只要标题、内容、作者等包含“亲亲宝宝 软件开发”都是我们要查找的结果。Lucene中MultiFieldQueryParser正好给我们提供多字段查找带来方便. MultiFieldQueryParser...阅读全文

分类: java 标签:

lucene3短语查找PhraseQuery

2010年1月15日 没有评论 307 次阅读

用户在搜索引擎中进行搜索时,常常查找的并非是一个简单的单词,很有可能是几个不同的关键字。这些关键字之间要么是紧密相联,成为一个精确的短语,要么是可能在这几个关键字之间还插有其他无关的关键字。此时,用户希望将它们找出来。不过很显然,从评分的角度看,这些关键字之间拥有与查找内容无关短语所在的文档的分值...阅读全文

分类: java 标签: ,

lucene3.0范围查找TermRangeQuery

2010年1月8日 没有评论 1,547 次阅读

在lucene3.0中,范围查询也有很大的变化,RangeQuery已经不推荐使用,使用TermRangeQuery和NumericRangeQuery两个替代。 TermRangeQuery:主要用于文本范围查找; IndexReader reader = IndexReader        .open(FSDirectory.open(INDEX_DIR), true); // only searching, Searcher search...阅读全文

分类: java 标签: ,

log4j使用DailyRollingFileAppender

2010年1月4日 没有评论 1,879 次阅读

DailyRollingFileAppender是日志记录软件包Log4J中的一个Appender,它能够按一定的频度滚动日志记录文件。 我们可以按下面的方式配置DailyRollingFileAppender: log4j.rootCategory=INFO,S log4j.appender.S=org.apache.log4j.DailyRollingFileAppender log4j.appender.S.File=${catalina.home}/logs/soso log4j.append...阅读全文

分类: java 标签:

Tomcat会话超时的配置

2009年12月31日 1 条评论 875 次阅读

有时我们需要Tomcat的会话超时时间要长一些,至少大于30分钟,这样我们需要配置。 1)超时时间的设定       tomcat的会话超时可以在多个级别上设置:tomcat实例级别、Web应用级别、servlet级别以及运行时Context代码级别。       较低级别的设定会覆盖较高级别的设定。...阅读全文

分类: java 标签:

Tomcat在启动时出现如下异常问题

2009年12月31日 没有评论 279 次阅读

Tomcat在启动时出现如下异常问题: 严重: IOException while loading persisted sessions: java.io.EOFException 严重: Exception loading sessions from persistent storage 是因为保存在硬盘上的session数据读取失败,对新会话也没有什么影响,但是如果不处理一下,每次启动都会出现这个问题,处理方法如下: 将work下...阅读全文

分类: java 标签:

lucene3.0中两个索引文件的联合查询

2009年12月29日 没有评论 686 次阅读

由于lucene生成索引文件比较耗时,索引我们可以把经常变动的和不变化的防到两个索引文件中,查询时使用联合查询,可以在两个索引中同时查找. IndexSearcher[] searchers = new IndexSearcher[2];  searchers[0] = new IndexSearcher(m_indexpath); searchers[1] = new IndexSearcher(m_outindexpath); MultiSearcher...阅读全文

分类: java 标签: ,

Log4j中使用additivity不继承父类的输出源

2009年12月22日 没有评论 1,209 次阅读

log4j.additivity 是 子Logger 是否继承父Logger 的 输出源(appender)的标志位。具体说,默认情况下,子Logger 会继承父Logger 的appender,也就是说 子Logger 会在父Logger 的appender里输出。若是additivity设为false,则子Logger 只会在自己的appender里输出,而不会在父Logger 的appender里输出。 具体配置如下,需要...阅读全文

分类: java 标签:

lucene删除索引中的数据

2009年12月18日 没有评论 701 次阅读

Lucene本身并不支持更新, 所以只能选择先删除再新增记录。 lucene本身支持两种删除模式 1,DeleteDocument(int docNum) //指定文档标号自动删除 2,DeleteDocuments(Term term) //删除所有出现该term的文档 前者是根据文档的编号来删除该文档,docNum是该文档进入索引时Lucene的编号,是按照顺序编的;后者是删除满足某一个...阅读全文

分类: java 标签: ,

lucene3.0 中BooleanQuery 的使用

2009年12月18日 没有评论 963 次阅读

lucene3.0中BooleanQuery 实现与或的复合搜索 . BooleanClause用于表示布尔查询子句关系的类,包括:BooleanClause.Occur.MUST,BooleanClause.Occur.MUST_NOT,BooleanClause.Occur.SHOULD。必须包含,不能包含,可以包含三种.有以下6种组合:    1.MUST和MUST:取得连个查询子句的交集。  2.MUST和MUST...阅读全文

分类: java 标签: ,