当前位置: 首页 > 知识库问答 >
问题:

IP_Range数据类型的Spring数据弹性搜索问题

车思淼
2023-03-14

我使用Spring boot 2.0.1。RELEASE/Spring数据Elasticsearch 3.0.6。我用@Document annotation注释我的域类,我有一个字段如下:

@Field(store = true, type = FieldType.?)
private String ipRange;

如您所见,我需要将字段类型设置为IP_范围(存在于弹性搜索引擎数据类型中),但不存在于FieldType enum中。

我想创建这个文件索引通过Elasticsearch chTemplate.create索引(doc)方法.但没有任何字段类型枚举支持ip_range数据类型。

共有2个答案

杨宏儒
2023-03-14

感谢@P.J.Meisch的回复,我使用@Mapping annotation直接通过json格式指定了我的映射。Spring data已经支持基于此配置创建索引。但我也在等待范围数据结构支持来重构我的代码。

我的文件:

@Document(createIndex = true, indexName = "mydomain", type = "doc-rule"
        , refreshInterval = BaseDocument.REFRESH_INTERVAL, replicas = BaseDocument.REPLICA_COUNT, shards = BaseDocument.SHARD_COUNT)
@Mapping(mappingPath = "/elasticsearch/mappings/mydomain-mapping.json")
public class MyDomainDoc {

@Field(store = true, type = FieldType.text)
private List<String> ipRange;

... other fields

}

还有我的mydomain映射。json文件:

{
  "properties": {
    ...,
    "ipRange": {
      "type": "ip_range",
      ...
    },
    ...
  }
}
傅博瀚
2023-03-14

Spring Data Elasticsearch目前(3.2.0.M2)不支持这一点。我看到你已经打开了一个问题,谢谢。这里的答案只是为了完整性和其他有同样问题的用户

 类似资料:
  • 升级到Spring boot 2.3和Spring data elasticsearch 4.0.9后的问题。我有这样的文档: 这在spring data 3.0中与Jackson配合得很好,但升级到4.0后,Jackson不再可用,现在我收到了一个来自spring的实例化异常,无法实例化URL对象。 例外情况: 任何关于解决方案的想法都将受到赞赏。

  • 我需要运行以下查询: 但我不能用spring data elasticsearch轻松运行这个。 有什么办法吗 spring data elasticsearch是否很好地支持所有elasticsearch查询DSL

  • 我有一个设计糟糕的文档结构: 我想从上面的文档中检索标题、Fach和代码。 多谢了。

  • 我正在使用spring数据elasticsearch来执行CRUD操作。 我有一个扩展Elasticsearch chRepository的自定义存储库。 最终,ElasticsearchRepository扩展了CrudRepository,这意味着可以更新现有记录。 问题是,你是如何做到这一点的?我还没有找到一个名为“update()”的方法 我认为做以下事情会有用(代码从https://gi

  • 是否缺少配置设置?

  • 我有一个Spring Boot应用程序,我想在其中单独使用弹性搜索2.2.0(而不是嵌入式服务器),我想使用Spring Data弹性搜索,那么Spring Data支持的弹性搜索版本是什么,我如何配置它以连接到运行在localhost:9200中的弹性搜索实例? 实际上,我尝试在application.properties文件中添加以下选项: 后来,我创建了这个配置类: 我得到了这个StackT