1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dromara-easy-es

 / Детали:

В сущностном классе используется List<String или Integer и других обёртывающих типов...>. Выделение проблемы.

Предстоит сделать
Владелец
Создано  
11.03.2025

При использовании List<String> в Elasticsearch для хранения данных, если вы хотите получить выделенные результаты при выполнении запроса, вам следует использовать функцию highlight.

Для получения эффекта, такого как ["<em>Иван</em> Петров", "Сидоров Петр", "Антонов Василий"], можно воспользоваться следующими шагами:

  1. Убедитесь, что поле, которое вы хотите выделить, было создано с типом text и имеет настройку fielddata=true.

  2. При создании запроса используйте параметр highlight и выберите подходящий метод выделения. Например, для использования метода match:

{
  "query": {
    "bool": {
      "must": [
        { "match": { "xxx": "искомое значение" } }
      ]
    }
  },
  "highlight": {
    "fields": {
      "xxx": {}
    },
    "require_field_match": false,
    "fragment_size": 100,
    "number_of_fragments": 1,
    "type": "unified"
  }
}

Здесь "xxx" — это имя поля, которое вы хотите выделить. В результате запроса Elasticsearch вернет вам данные вместе с метками <em> и </em>, которые будут указывать на найденные совпадения.

Обратите внимание, что использование fielddata=true может потребовать значительных системных ресурсов, особенно если ваше поле большое. Поэтому рекомендуется использовать этот параметр только тогда, когда это действительно необходимо.

Комментарий (0)

GitLife Service Account Задача создана

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/dromara-easy-es.git
git@api.gitlife.ru:oschina-mirror/dromara-easy-es.git
oschina-mirror
dromara-easy-es
dromara-easy-es