Как получить данные изasticsearch, содержащие специальные символы, такие как ./ - ... используя данные пружины?
У меня есть документ, определенный следующим образом:
@Document(indexName = "audit-2018.135", type = "audit")
public class Trace {
@Id
private String id;
@Field(type = FieldType.Text)
private String uri;
// setters & getters
}
Мне нужно получить данные изasticSearch по полю uri .
Вот пример того, как выглядят данные:
martin-int-vip.vs.cz: 5080 / kib / api / runtime / case / CASE0000000000324223
При использовании kibana я могу использовать:
uri: "martin-int-vip.vs.cz:5080/kib"
, и я получаю обратнозапись выше, которая содержит искомую подстроку.
Теперь мне нужно добиться того же с помощью Java, однако в весенних данных он не работает должным образом.
У меня есть эластичный репозиторий эластичности, подобный этому:
public interface TraceRepository extends ElasticsearchRepository<Trace, String> {
List<Trace> findByUriContaining(String uri);
}
когда я вызываю метод findByUriContained с параметром uri как:
martin-int-vip.vs.cz: 5080 \ / kib
или даже это
martin-int
Я получаю 0 результатов.Когда я отправляю «kib» в качестве параметра, он корректно возвращает все записи, содержащие слово «kib», однако он не работает с такими специальными символами, как./ - и т. д. Как мне запросить мойasticSearch из Java, чтобы получить все записи, которые содержат желаемую подстроку?Спасибо