直接上例子
假设已有Index: 对文本文件进行索引,有两个Field, 分别是 文件名(fileName)和文件内容(content)
使用content作为default field:
QueryParser qp = new QueryParser(Version.LUCENE_30, "content", new StandardAnalyzer( Version.LUCENE_30));
Query query = qp.parse("人"); //会搜出内容中含有“人”字样的文档 Query query = qp.parse("fileName:人"); //会搜出标题中含有“人”字样的文档
可以看出:
1. 使用content作为default field构建的Parser,仍然可以对其他Field进行搜索
2. 如果在搜索的term里不指定field, 则parser会默认使用content作为目标Field