我的实体中有一个属性,我不想坚持使用Elasticsearch,因为它是"计算的"属性,而不是字段,所以我添加了@Transient
(来自spring数据):
public class Vehicle {
//more stuff
@Transient
public String getType() {
if (something) {
return "A";
}
return "B";
}
}
但是我收到了映射错误(它被定义为严格,并且它不知道字段"类型")。
我知道我可以使用@JsonIgnore
,但是我需要通过Json REST API将一个Vehicle实例返回给用户,并且必须包含该属性。
答案 0 :(得分:0)
我需要通过Json REST将一个Vehicle实例返回给用户 必须包含API和该属性
你正处于严谨的境地!您可以忽略@JsonIgnore
所需的任何内容,也可以通过@JsonProperty
注释添加任何JSON属性
在这种情况下,您可以执行以下操作:
@JsonProperty("type")
public String getTypeForMyBusinesLogic() {
return getType();
//or whatever you want to return
}