Как вы можете видеть в документации:
PutMappingRequest request = new PutMappingRequest("twitter");
request.type("tweet");
Вы можете установить полезную нагрузку этого запроса, используя ваше определение как String
request.source(
"{\n" +
" \"properties\": {\n" +
" \"message\": {\n" +
" \"type\": \"text\"\n" +
" }\n" +
" }\n" +
"}",
XContentType.JSON);
или Карта с вашими свойствами или даже XContentBuilder
.
С клиентом низкого уровня вы выполняете любые запросы, включая те, которые вы ищете.
Что касается названия, я думаю, что HighLevel относится к тому факту, что предусмотрены методы (также называемые повторное использование, удобство) для создания запросов, и никто не вынужден сам выполнять запросы остальных. Вы всегда можете использовать RestTemplate. Обратите внимание, что HighLevelRestClient внутренне использует apache HttpClient .
Но для удобства сопровождения кода я бы выбрал один путь. (Низко-Высокий уровень или любой http-клиент).
из документов (Обратите внимание, что RestHighLevelClient построен на низкоуровневом.)
Низкоуровневый Java REST-клиент внутренне использует Apache
Http Async Client для отправки http запросов. Зависит от следующего
Артефакты, а именно асинхронный http-клиент и его собственный транзитивный
Зависимости:
- org.apache.httpcomponents: httpasyncclient
- org.apache.httpcomponents: httpcore-NiO
- org.apache.httpcomponents: HttpClient
- org.apache.httpcomponents: httpcore
- Обще-кодек: Обще-кодек
- Обще-каротаж: Обще-каротаж