我正在學習Lucene,無法獲得QueryParser和Term Query之間的區別。看起來他們是一樣的。這是真的?如果不是,我應該什麼時候使用另一個?何時使用QueryParser與TermQuery?
1
A
回答
4
不,他們不是同一個。以下是每個人的個人描述。
1)QueryParser 「解析」文本查詢並構建Lucene-Query-Object。它接受文本查詢並基於該信息構建一個Lucene查詢對象。
Look at this article它描述了QueryParser分析文本輸入並構建相應查詢對象的方式。
2)TermQuery是QueryParser的可交付物,即它是Lucene Query的一種類型。 Lucene支持各種各樣的查詢,如布爾查詢,模糊查詢等。TermQuery是Lucene查詢的最基本形式。
什麼時候用什麼?
幾乎所有從簡單到高級的應用程序都使用QueryParser。只需傳入文本輸入,並從輸入中構建相應的Lucene-Query-Object。
您始終可以使用TermQuery構造函數構建自己的查詢。人們通常在嘗試不同的查詢類型時構建自己的Lucene-Query-Objects。
您可以檢查此教程,擁有所有你需要知道的,而使用Lucene基本的東西:Lucene in 5 minutes
相關問題
- 1. Lucene 6.0中的TermQuery和QueryParser有什麼區別?
- 2. 的QueryParser與CustomAnalyzer食堂使用的PatternReplaceCharFilter
- 3. 如何在TermQuery中使用StandardAnalyzer?
- 4. Lucene QueryParser
- 5. lucene 3.0.3 | QueryParser的
- 6. 如何使用TermQuery在多個術語中執行AND查詢?
- 7. Lucene.Net TermQuery通配符搜索
- 8. 如何使用QueryParser將查詢轉換爲編程方式?
- 9. Lucene QueryParser需要與自定義分析器配合使用stopfilter和porterstemfilter
- 10. 的創LowercaseKeywordAnalyzer與TermQuery沒有返回結果
- 11. 如何提升Lucene-6中的QueryParser?
- 12. Solr queryparser的lucene索引?
- 13. 的Apache Lucene的6 QueryParser的範圍查詢未與IntPoint
- 14. 何時使用IntentSender與PendingIntent?
- 15. 何時使用IModelBinder與DefaultModelBinder
- 16. 何時使用RACReplaySubject與RACMulticastConnection?
- 17. 何時使用XmlConvert.ToString與Object.ToString()
- 18. 何時使用Backbone.View與Backbone.Marionette.ItemView?
- 19. 何時使用CCScene與CCLayer?
- 20. 何時使用()與類?
- 21. 何時使用TaskEx.Run與TaskEx.RunEx
- 22. 何時使用Set與Collection?
- 23. 何時使用HtmlControls與WebControls
- 24. 爲什麼Lucene QueryParser需要分析器
- 25. 部署Lucene的環繞的QueryParser到Solr
- 26. Luke Lucene QueryParser區分大小寫敏感
- 27. Lucene QueryParser將'AND OR'解釋爲命令?
- 28. Lucene:轉義環繞QueryParser的關鍵字
- 29. Lucene 3.5.0 QueryParser在編程生成查詢時沒有發現任何結果
- 30. 如何在QueryParser中合併多個字段?
了it..Thanks爲您深入的答案。 – Luke101 2013-04-23 11:59:24