สร้างดัชนีการค้นหา java ด้วย GroupDocs.Search for Java

ในคู่มือฉบับครอบคลุมนี้ คุณจะได้เรียนรู้วิธี สร้างดัชนีการค้นหา java ด้วยการใช้ GroupDocs.Search for Java และยังได้เห็นวิธี ไฮไลท์ผลการค้นหา java เพื่อให้ผู้ใช้สามารถมองเห็นการจับคู่ได้ทันทีในไฟล์ PDF, ไฟล์ Office, หน้า HTML และอื่น ๆ ไม่ว่าคุณจะสร้างยูทิลิตี้เดสก์ท็อปแบบเบาหรือบริการค้นหาองค์กรที่มีการประมวลผลสูง ขั้นตอนต่อไปนี้จะครอบคลุมทุกอย่างตั้งแต่การทำดัชนีรูปแบบต่าง ๆ ไปจนถึงการปรับแต่งประสิทธิภาพและการรันตัวอย่างการค้นหาแบบ Boolean ใน Java

ภาพรวมโดยสรุป

  • ทำดัชนีประเภทเอกสารที่หลากหลาย – PDFs, DOCX, PPTX, XLSX, HTML, และรูปแบบอื่น ๆ มากกว่า 150 ประเภท.
  • รันคิวรีขั้นสูง – Boolean, fuzzy, wildcard, phrase, regex, และการค้นหา faceted.
  • ใช้การประมวลผลภาษา – Synonyms, spell checking, homophone detection, และ custom dictionaries.
  • รวม OCR – ดึงข้อความจากภาพสแกนและเพิ่มลงในดัชนีที่สามารถค้นหาได้.
  • เพิ่มประสิทธิภาพ – ควบคุมการใช้หน่วยความจำ, ขนาดดัชนี, และเวลาตอบสนองของคิวรีสำหรับดัชนีที่มีขนาดหลายกิกะไบต์.
  • ไฮไลท์ผลลัพธ์ – แสดงการจับคู่โดยตรงในเอกสารต้นฉบับหรือในตัวอย่าง HTML พร้อมสีและคลาส CSS ที่ปรับแต่งได้.

ด้านล่างเป็นรายการบทแนะนำที่คัดสรรไว้เพื่อพาคุณผ่านแต่ละความสามารถอย่างเป็นขั้นตอน

คำตอบอย่างรวดเร็ว

  • “highlight search results java” ทำอะไร? มันทำเครื่องหมายด้วยภาพให้กับคำที่ตรงกันภายในเอกสารต้นฉบับหรือในตัวอย่าง HTML ที่สร้างขึ้น ทำให้ผู้ใช้สามารถค้นหาตัวอย่างที่เกี่ยวข้องได้ทันที.
  • ไลบรารีใดที่ให้การค้นหา faceted java? GroupDocs.Search for Java มีการสนับสนุนการค้นหา faceted ในตัวที่จัดกลุ่มผลลัพธ์ตามฟิลด์เมตาดาต้า.
  • ฉันสามารถทำ OCR java ด้วย API เดียวกันได้หรือไม่? ใช่—เปิดใช้งานเครื่องมือ OCR ด้วยการตั้งค่า OcrOptions เพียงหนึ่งค่าและกระบวนการทำดัชนีเดียวกันจะดึงข้อความจากภาพ.
  • ฉันต้องการไลเซนส์สำหรับการใช้งานในผลิตภัณฑ์หรือไม่? จำเป็นต้องมีไลเซนส์เชิงพาณิชย์เมื่อระยะทดลองสิ้นสุดลง.
  • API นี้เข้ากันได้กับ Java 17 และรุ่นต่อไปหรือไม่? รองรับ Java 8+ อย่างเต็มที่, ได้รับการทดสอบบน Java 17, และทำงานบนแพลตฟอร์มที่เข้ากันกับ JVM ใด ๆ.

“highlight search results java” คืออะไร

การไฮไลท์ผลการค้นหาใน Java หมายถึงการใช้สัญญาณภาพโดยโปรแกรม—เช่นสีพื้นหลังหรือการทำตัวหนา—กับคำหรือวลีที่ตรงกับคิวรีของผู้ใช้อย่างแม่นยำ เทคนิคนี้ช่วยลดเวลาที่ผู้ใช้ใช้ในการสแกนเอกสารยาวและปรับปรุงการใช้งานการค้นโดยรวม

ทำไมต้องใช้ GroupDocs.Search for Java?

GroupDocs.Search for Java ทำการทำดัชนีและคิวรีเอกสารหลายพันฉบับภายในเวลาน้อยกว่า 2 วินาทีบนเซิร์ฟเวอร์ 8‑คอร์มาตรฐาน รองรับไฟล์รูปแบบกว่า 150 ประเภท, ประมวลผลดัชนีหลายกิกะไบต์โดยไม่ต้องโหลดคอลเลกชันทั้งหมดเข้าสู่หน่วยความจำ, และมี OCR, การค้นหา faceted, และการจัดการคำพ้องความหมายพร้อมใช้งาน—ทั้งหมดผ่าน API ที่ลื่นไหลและมีเอกสารครบถ้วน

ข้อกำหนดเบื้องต้น

  • Java 8 หรือใหม่กว่า (แนะนำ Java 17)
  • Maven หรือ Gradle สำหรับการจัดการ dependencies
  • ไลเซนส์ GroupDocs.Search for Java ที่ถูกต้อง (มีรุ่นทดลองให้ใช้)

คู่มือขั้นตอนโดยละเอียด

ขั้นตอนที่ 1: ตั้งค่าโปรเจกต์

สร้างโปรเจกต์ Maven หรือ Gradle และเพิ่ม dependency ของ GroupDocs.Search ลงไป ใส่ไฟล์ไลเซนส์ของคุณ (GroupDocs.Search.lic) ในโฟลเดอร์ src/main/resources เพื่อให้ SDK โหลดโดยอัตโนมัติ

ขั้นตอนที่ 2: สร้างดัชนี

Index คือคลาสหลักที่แสดงถึงที่เก็บข้อมูลที่สามารถค้นหาได้บนดิสก์.

Index index = new Index("path/to/index/folder");

หลังจากที่คุณสร้างอินสแตนซ์ของ Index แล้ว ให้เรียก add สำหรับแต่ละเอกสารที่ต้องการให้ค้นหาได้ SDK จะตรวจจับประเภทไฟล์และดึงข้อความโดยอัตโนมัติ

ขั้นตอนที่ 3: เปิดใช้งาน OCR (implement OCR java)

OcrOptions กำหนดค่าการทำงานของเครื่องมือ OCR ในตัว.

OcrOptions ocr = new OcrOptions();
ocr.setLanguage("eng");
ocr.setDpi(300);

แนบอินสแตนซ์ของ OcrOptions ไปกับการเรียกทำดัชนีเพื่อให้ภาพสแกนถูกแปลงเป็นข้อความที่สามารถค้นหาได้

ขั้นตอนที่ 4: ทำคิวรีการค้นหา

SearchOptions สร้างคิวรีที่คุณส่งไปยังดัชนี.

SearchOptions options = new SearchOptions()
    .setQuery("invoice")
    .setBooleanOperator(BooleanOperator.AND)
    .setFuzzy(true);

คุณสามารถรวม ตัวอย่าง Java boolean query กับฟิลเตอร์ faceted, wildcard, หรือรูปแบบ regex เพื่อจำกัดผลลัพธ์เพิ่มเติม

ขั้นตอนที่ 5: ไฮไลท์ผลการค้นหา java

Highlight คือคลาสยูทิลิตี้ที่สร้างเวอร์ชันที่ไฮไลท์ของเอกสารที่ตรงกัน.

HighlightOptions highlight = new HighlightOptions()
    .setColor(Color.YELLOW)
    .setCssClass("search-highlight");
HighlightResult result = Highlight.apply(searchResult, highlight);

API จะคืนค่าเป็นไฟล์ PDF ที่แก้ไขหรือส่วน HTML ที่ทุกคำที่ตรงกันจะถูกห่อด้วยสไตล์ที่เลือก

ขั้นตอนที่ 6: ตรวจสอบและปรับแต่ง

ใช้ API สถิติในตัวเพื่อเฝ้าติดตามขนาดดัชนี, การใช้หน่วยความจำ, และความหน่วงของคิวรี ปรับ maxMemoryUsage หรือเปิดการบีบอัด (setCompression(true)) เพื่อให้ดัชนีมีขนาดเล็กเมื่อจัดการกับข้อมูลหลายล้านรายการ

ปัญหาทั่วไปและวิธีแก้

  • ไม่มีการไฮไลท์แสดง: ตรวจสอบว่าคุณได้ส่งอ็อบเจ็กต์ HighlightOptions พร้อมรูปแบบเอาต์พุตที่รองรับ (HTML หรือ PDF).
  • OCR พลาดข้อความ: ตรวจสอบว่าติดตั้งแพ็คเกจภาษาและภาพต้นฉบับมีความละเอียดอย่างน้อย 300 dpi ตามคำแนะนำ.
  • การค้นหา faceted คืนค่า bucket ว่าง: ยืนยันว่าฟิลด์ที่คุณต้องการ facet ถูกทำดัชนีด้วยประเภท Facet ในขั้นตอนที่ 2.

คำถามที่พบบ่อย

ถาม: ฉันสามารถใช้ faceted search java ร่วมกับการจับคู่ fuzzy ได้หรือไม่?
ตอบ: ใช่—คุณสามารถเชื่อมต่อฟิลเตอร์ facet และคิวรี fuzzy ใน SearchOptions builder เดียวกัน ทำให้คุณสามารถจำกัดผลลัพธ์ได้ในขณะที่ยอมรับการสะกดผิด

ถาม: การไฮไลท์ทำงานกับ PDF ที่เข้ารหัสหรือไม่?
ตอบ: ทำงานได้เฉพาะเมื่อคุณให้รหัสผ่านที่ถูกต้องขณะเพิ่มเอกสารเข้าสู่ดัชนี; SDK จะทำการถอดรหัส, ไฮไลท์, และเข้ารหัสผลลัพธ์ใหม่

ถาม: ดัชนีสามารถใหญ่ได้เท่าไหร่ก่อนที่ประสิทธิภาพจะลดลง?
ตอบ: ไลบรารีสามารถจัดการดัชนีหลายกิกะไบต์ได้อย่างเชื่อถือได้; การเปิดใช้งานการบีบอัดและปรับ maxMemoryUsage ช่วยให้เวลาคิวรีอยู่ต่ำกว่า 200 ms แม้กับเอกสาร 10 ล้านฉบับ

ถาม: มีวิธีปรับสีไฮไลท์ได้หรือไม่?
ตอบ: แน่นอน ใช้ HighlightOptions.setColor(Color.YELLOW) หรือให้คลาส CSS ที่กำหนดเองสำหรับเอาต์พุต HTML ผ่าน setCssClass

ถาม: เวอร์ชันของ GroupDocs.Search ที่ทดสอบกับคู่มือนี้คืออะไร?
ตอบ: ตัวอย่างได้รับการตรวจสอบกับ GroupDocs.Search for Java 23.9

หัวข้อที่เกี่ยวข้องที่คุณอาจสนใจ

ภาพรวมคุณสมบัติการค้นหาเอกสาร Java

GroupDocs.Search for Java มีชุดความสามารถที่ครอบคลุมสำหรับการสร้างแอปพลิเคชันการค้นหาที่ทรงพลัง:

  • รองรับหลายรูปแบบ – มากกว่า 150 รูปแบบอินพุตและเอาต์พุต รวมถึง PDF, DOCX, PPT, XLS, HTML, และไฟล์ภาพ
  • ประเภทการค้นหาขั้นสูง – Boolean, fuzzy, wildcard, phrase, regex, และตัวเลือก faceted search java
  • การทำดัชนีอัจฉริยะ – การทำดัชนีเอกสารที่เร็วและกำหนดค่าได้พร้อมการบีบอัดแบบเลือก
  • การประมวลผลภาษา – การตรวจจับคำพ้อง, การตรวจสอบการสะกด, และการจำแนกโฮโมโฟน
  • รองรับ OCR – ดึงและค้นหาข้อความจากภาพและเอกสารสแกน (implement OCR java)
  • การเพิ่มประสิทธิภาพ – การปรับการใช้หน่วยความจำและความเร็วคิวรีสำหรับดัชนีหลายกิกะไบต์
  • การไฮไลท์ผลลัพธ์ – ไฮไลท์การจับคู่การค้นหาในเอกสารต้นฉบับด้วยภาพ (highlight search results java)
  • รองรับพจนานุกรม – พจนานุกรมกำหนดเองสำหรับคำศัพท์และโดเมนเฉพาะ
  • การค้นหาแบบกระจาย – สร้างโซลูชันการค้นหาที่ขยายได้และแบ่งชาร์ดด้วยฟีเจอร์เครือข่าย
  • ความเร็วสูง – ประมวลผลและค้นหา 10 000 เอกสารภายในเวลาน้อยกว่า 2 วินาทีบนเซิร์ฟเวอร์ทั่วไป

แหล่งเรียนรู้

อัปเดตล่าสุด: 2026-08-26
ทดสอบด้วย: GroupDocs.Search for Java 23.9
ผู้เขียน: GroupDocs