我有一个field
,例如Object_IDs
,它可以有多个Object_ID
。以下是代码段:
"Object_IDs":{
"type":"nested",
"properties":{
"Object_ID": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
我正在使用Elastic search
6.2.3
,并且正在使用com.fasterxml.jackson.databind.ObjectMapper
映射对象。
我无法使用nested field
创建一个com.fasterxml.jackson.databind.ObjectMapper
。这是代码段:
ObjectNode nestedNode = objectMapper.createObjectNode();
nestedNode.put("type", "nested");
nestedNode.put("index", true);
mapperNode.set("Object_IDs", nestedNode);
ObjectNode setkeyWord = objectMapper.createObjectNode();
setkeyWord.put("type", "keyword");
setkeyWord.put("index", true);
ObjectNode innerProperties = objectMapper.createObjectNode();
innerProperties.set("Object_ID", setkeyWord);
nestedNode.set("properties", innerProperties);
但是结果是:
"mappings": {
"archive": {
"properties": {
"Object_IDs": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"Object_ID": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
请帮助我使用mapping
为nested field创建com.fasterxml.jackson.databind.ObjectMapper
答案 0 :(得分:0)
我不了解com.fasterxml.jackson.databind.ObjectMapper。但是您可以通过将Object_IDs字段映射到嵌套类型(如下所示)来创建索引。
kotlin-kapt