我有一个spring data elasticsearch应用程序和一个文档,其中一个字段是另一个DTO。当我保存文档时,它将此字段另存为json,但是当我要对其进行部分更新时,它将始终将该字段另存为String。如何解决呢?
这是我的更新代码,其中SearchAndMatchData是我要更新的DTO
void updateSearchAndMatchField(final String listingId, final SearchAndMatchData data) {
final IndexRequest indexRequest = new IndexRequest();
indexRequest.source("searchAndMatchData", data);
final UpdateQuery updateQuery = new UpdateQueryBuilder().withId(listingId).withClass(ListingsData.class).withIndexRequest(indexRequest).build();
synchronized (this) {
elasticsearchTemplate.update(updateQuery);
}
}