spring数据elasticsearch字段映射
spring data elasticsearch field mapping
我的文档结构设计得很糟糕:
{
"_index": "items",
"_type": "item",
"_id": "CD5D8F6516A88805FA826C10777B1750D9AAF5DA9CDD8E264757AB7EEC22B1EB",
"_score": 1,
"_source": {
"title": "Textverständnis 5",
"active": true,
"successorId": null,
"metadata": {
"Fach": "DE",
"Kompetenz": "Les",
"code": "C_SX_DE_Les_A0016_00149_V00",
...
}
}
}
我想从以上文件。
@Document(indexName = "items", type = "item")
@Data
public class Item {
@Id
private String id;
private String title;
private Metadata metadata;
@Data
static class Metadata {
private String Fach;
private String code;
}
}
检索 title、code 没问题,但是 Fach 字段 returns 空。你知道我怎么映射这个字段吗?看来问题出在大写,但不幸的是我无法更改文档结构。
你能帮忙吗?
谢谢。
已使用 Jackson 的 @JsonProperty 注释解决,例如:
@Document(indexName = "items", type = "item")
@Data
public class Item {
@Id
private String id;
private String title;
private Metadata metadata;
@Data
static class Metadata {
@JsonProperty("Fach")
private String subject;
private String code;
}
}
我的文档结构设计得很糟糕:
{
"_index": "items",
"_type": "item",
"_id": "CD5D8F6516A88805FA826C10777B1750D9AAF5DA9CDD8E264757AB7EEC22B1EB",
"_score": 1,
"_source": {
"title": "Textverständnis 5",
"active": true,
"successorId": null,
"metadata": {
"Fach": "DE",
"Kompetenz": "Les",
"code": "C_SX_DE_Les_A0016_00149_V00",
...
}
}
}
我想从以上文件。
@Document(indexName = "items", type = "item")
@Data
public class Item {
@Id
private String id;
private String title;
private Metadata metadata;
@Data
static class Metadata {
private String Fach;
private String code;
}
}
检索 title、code 没问题,但是 Fach 字段 returns 空。你知道我怎么映射这个字段吗?看来问题出在大写,但不幸的是我无法更改文档结构。
你能帮忙吗?
谢谢。
已使用 Jackson 的 @JsonProperty 注释解决,例如:
@Document(indexName = "items", type = "item")
@Data
public class Item {
@Id
private String id;
private String title;
private Metadata metadata;
@Data
static class Metadata {
@JsonProperty("Fach")
private String subject;
private String code;
}
}