Lucene - การเขียนโปรแกรมแบบสอบถาม

เราได้เห็นในบทที่แล้ว Lucene - Search OperationLucene ใช้ IndexSearcher เพื่อทำการค้นหาและใช้วัตถุ Query ที่สร้างโดย QueryParser เป็นอินพุต ในบทนี้เราจะพูดถึงออบเจ็กต์ Query ประเภทต่างๆและวิธีการต่างๆในการสร้างโดยใช้โปรแกรม การสร้างออบเจ็กต์ Query ประเภทต่างๆจะช่วยให้สามารถควบคุมชนิดของการค้นหาได้

ลองพิจารณากรณีของการค้นหาขั้นสูงซึ่งมีให้โดยแอปพลิเคชันจำนวนมากซึ่งผู้ใช้จะได้รับตัวเลือกมากมายเพื่อ จำกัด ผลการค้นหา ด้วยการเขียนโปรแกรม Query เราสามารถบรรลุสิ่งเดียวกันได้อย่างง่ายดาย

ต่อไปนี้เป็นรายการประเภทการสืบค้นที่เราจะพูดถึงในช่วงเวลาที่กำหนด

ส. ชั้นเรียนและคำอธิบาย
1 TermQuery

คลาสนี้ทำหน้าที่เป็นส่วนประกอบหลักซึ่งสร้าง / อัพเดตดัชนีในระหว่างกระบวนการสร้างดัชนี

2 TermRangeQuery

TermRangeQuery ถูกใช้เมื่อต้องการค้นหาช่วงของข้อความที่เป็นข้อความ

3 PrefixQuery

PrefixQuery ใช้เพื่อจับคู่เอกสารที่ดัชนีเริ่มต้นด้วยสตริงที่ระบุ

4 BooleanQuery

BooleanQuery ใช้เพื่อค้นหาเอกสารซึ่งเป็นผลมาจากการสืบค้นหลายรายการโดยใช้ AND, OR หรือ NOT ผู้ประกอบการ

5 PhraseQuery

การสืบค้นแบบวลีใช้เพื่อค้นหาเอกสารที่มีลำดับคำศัพท์เฉพาะ

6 WildCardQuery

WildcardQuery ใช้เพื่อค้นหาเอกสารโดยใช้สัญลักษณ์แทนเช่น '*' สำหรับลำดับอักขระใด ๆ ? จับคู่อักขระเดี่ยว

7 FuzzyQuery

FuzzyQuery ใช้เพื่อค้นหาเอกสารโดยใช้การใช้งานแบบฟัซซี่ซึ่งเป็นการค้นหาโดยประมาณตามอัลกอริทึมระยะแก้ไข

8 MatchAllDocsQuery

MatchAllDocsQuery ตามชื่อที่แนะนำจะตรงกับเอกสารทั้งหมด