إنشاء فهرس بحث جافا باستخدام GroupDocs.Search لـ Java

في هذا الدليل الشامل ستتعلم كيفية create search index java التطبيقات باستخدام GroupDocs.Search لـ Java، وسترى أيضًا كيفية highlight search results java بحيث يمكن للمستخدمين تحديد التطابقات فورًا داخل ملفات PDF، وملفات Office، وصفحات HTML، وأكثر. سواءً كنت تبني أداة سطح مكتب خفيفة أو خدمة بحث مؤسسية عالية الإنتاجية، فإن الخطوات أدناه تغطي كل شيء من فهرسة الصيغ المتنوعة إلى تحسين الأداء وتشغيل مثال استعلام Java boolean.

نظرة سريعة

  • Index diverse document types – ملفات PDF، DOCX، PPTX، XLSX، HTML، وأكثر من 150 صيغة أخرى.
  • Run advanced queries – Boolean، fuzzy، wildcard، phrase، regex، وعمليات البحث faceted.
  • Leverage language processing – Synonyms، spell checking، اكتشاف المت homophone، وقواميس مخصصة.
  • Integrate OCR – استخراج النص من الصور الممسوحة وإضافته إلى الفهرس القابل للبحث.
  • Optimize performance – التحكم في استهلاك الذاكرة، حجم الفهرس، وأوقات استجابة الاستعلام للفهارس التي تصل إلى حجم متعدد الجيجابايت.
  • Highlight results – عرض التطابقات مباشرةً في المستند الأصلي أو في معاينة HTML مع ألوان قابلة للتخصيص وفئات CSS.

فيما يلي قائمة مختارة من الدروس المخصصة التي تشرح كل قدرة خطوة بخطوة.

إجابات سريعة

  • What does “highlight search results java” do? يضع علامات بصرية على المصطلحات المتطابقة داخل المستند الأصلي أو معاينة HTML المُولدة، مما يسمح للمستخدمين بتحديد المقاطع ذات الصلة فورًا.
  • Which library provides faceted search java? يحتوي GroupDocs.Search لـ Java على دعم مدمج للبحث faceted الذي يجمع النتائج حسب حقول البيانات الوصفية.
  • Can I implement OCR java with the same API? نعم—قم بتمكين محرك OCR بإعداد واحد OcrOptions وسيتولى سير عمل الفهرسة نفسه استخراج النص من الصور.
  • Do I need a license for production use? يلزم الحصول على ترخيص تجاري بمجرد انتهاء فترة التجربة.
  • Is the API compatible with Java 17 and later? يدعم بالكامل Java 8+، وتم اختباره على Java 17، ويعمل على أي منصة متوافقة مع JVM.

ما هو “highlight search results java”؟

Highlighting search results in Java means programmatically applying visual cues—such as background colors or bold styling—to the exact words or phrases that matched a user’s query. هذه التقنية تقصر الوقت الذي يقضيه المستخدمون في مسح المستندات الطويلة وتُحسّن من قابلية استخدام البحث بشكل عام.

لماذا تستخدم GroupDocs.Search لـ Java؟

GroupDocs.Search for Java indexes and queries thousands of documents in under two seconds on a standard 8‑core server. يدعم أكثر من 150 صيغة ملف، يعالج فهارس متعددة الجيجابايت دون تحميل المجموعة بالكامل في الذاكرة، ويقدم OCR جاهز، والبحث faceted، ومعالجة المرادفات—كل ذلك عبر API سهل الاستخدام وموثّق جيدًا.

المتطلبات المسبقة

  • Java 8 أو أحدث (يوصى بـ Java 17)
  • Maven أو Gradle لإدارة التبعيات
  • ترخيص صالح لـ GroupDocs.Search لـ Java (يتوفر نسخة تجريبية)

دليل خطوة بخطوة

الخطوة 1: إعداد المشروع

أنشئ مشروع Maven أو Gradle وأضف تبعية 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 example مع مرشحات faceted أو wildcards أو أنماط 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)) للحفاظ على خفة الفهرس عند معالجة ملايين السجلات.

المشكلات الشائعة والحلول

  • No highlights appear: تحقق من أنك مررت كائن HighlightOptions مع تنسيق إخراج مدعوم (HTML أو PDF).
  • OCR misses text: تأكد من تثبيت حزم اللغات وأن الصور المصدرية تفي بحد أدنى 300 dpi الموصى به.
  • Faceted search returns empty buckets: تأكد من أن الحقول التي تنوي تطبيق faceted عليها تم فهرستها بنوع Facet خلال الخطوة 2.

الأسئلة المتكررة

Q: Can I use faceted search java together with fuzzy matching?
A: نعم—يمكنك ربط مرشحات facet واستعلامات fuzzy في نفس مُنشئ SearchOptions، مما يسمح لك بتضييق النتائج مع تحمل الأخطاء الإملائية.

Q: Does highlighting work on encrypted PDFs?
A: يعمل فقط عندما تزود كلمة المرور الصحيحة أثناء إضافة المستند إلى الفهرس؛ ثم يقوم SDK بفك التشفير، والتمييز، وإعادة تشفير الناتج.

Q: How large can an index become before performance degrades?
A: تتعامل المكتبة بثقة مع فهارس متعددة الجيجابايت؛ تفعيل الضغط وضبط maxMemoryUsage يتيح لك الحفاظ على أوقات الاستعلام أقل من 200 ms حتى مع 10 مليون مستند.

Q: Is there a way to customize the highlight color?
A: بالتأكيد. استخدم HighlightOptions.setColor(Color.YELLOW) أو قدم فئة CSS مخصصة لإخراج HTML عبر setCssClass.

Q: What version of GroupDocs.Search is tested with this guide?
A: تم التحقق من صحة الأمثلة باستخدام GroupDocs.Search لـ Java 23.9.

مواضيع ذات صلة قد ترغب في استكشافها

نظرة عامة على ميزات البحث في مستندات Java

يقدم GroupDocs.Search لـ Java مجموعة شاملة من القدرات لبناء تطبيقات بحث قوية:

  • Multi‑format support – أكثر من 150 صيغة إدخال وإخراج، بما في ذلك PDF، DOCX، PPT، XLS، HTML، وملفات الصور.
  • Advanced search types – Boolean، fuzzy، wildcard، phrase، regex، وخيارات faceted search java.
  • Intelligent indexing – فهرسة مستندات سريعة وقابلة للتكوين مع ضغط اختياري.
  • Language processing – اكتشاف المرادفات، تدقيق الإملاء، والتعرف على المت homophone.
  • OCR support – استخراج والبحث عن النص من الصور والمستندات الممسوحة (implement OCR java).
  • Performance optimization – ضبط استهلاك الذاكرة وسرعة الاستعلام لفهارس متعددة الجيجابايت.
  • Result highlighting – تمييز بصري لمطابقات البحث في المستندات الأصلية (highlight search results java).
  • Dictionary support – قواميس مخصصة للمصطلحات المتخصصة والمجالات.
  • Distributed search – بناء حلول بحث موزعة ومقسمة باستخدام ميزات الشبكة.
  • Blazing speed – معالجة والبحث في 10 000 مستند خلال أقل من ثانيتين على خادم عادي.

موارد التعلم


آخر تحديث: 2026-08-26
تم الاختبار مع: GroupDocs.Search for Java 23.9
المؤلف: GroupDocs