在弹性搜索中,我可以禁用_source字段,如: -
PUT tweets
{
"mappings": {
"tweet": {
"_source": {
"enabled": false
}
}
}}
如何使用spring data-elasticsearch实现这一目标?
答案 0 :(得分:0)
我们可以通过以下方式进行映射: -
1)硬编码2)可以从属性文件中读取3)使用Xcontentbuilder构建它
我们可以使用spring数据提供的ElasticsearchTemplate
类来执行此操作,如: -
if (!elasticsearchTemplate.indexExists(esIndex)) {
elasticsearchTemplate.createIndex(esIndex);
elasticsearchTemplate.putMapping(esIndex, esType,mappingObject);
}
此mappingObject是从属性文件中读取的字符串。 它可以是这样的: -
mapping={"_source": {"includes": [ "id","name","marks","grade"],"excludes": ["contact_info","phone_num"]}}
在这种情况下,我们会排除字段 contact_info 和 phone_num 。因此,这些字段不会包含在索引的_source
中。
当我们使用spring数据elasticsearch时就是这种情况。
如果您没有使用spring数据,那么我们也可以使用Xcontentbuilder。