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 ตามชื่อที่แนะนำจะตรงกับเอกสารทั้งหมด |