将Hibernate@JsonProperty设置为多个输出字段

将Hibernate@JsonProperty设置为多个输出字段,json,spring,hibernate,serialization,Json,Spring,Hibernate,Serialization,我对Hibernate注释有一个问题。我有一个实体,因为我有一个列,我使用@JsonSerialize将值转换为不同的格式,并使用@JsonProperty将其写入输出json中的不同字段: @Transient @Type(type = "org.hibernatespatial.GeometryUserType") @Column(name = "the_geom", columnDefinition = "Geometry") Geometry gml; @JsonProperty("w

我对Hibernate注释有一个问题。我有一个实体,因为我有一个列,我使用@JsonSerialize将值转换为不同的格式,并使用@JsonProperty将其写入输出json中的不同字段:

@Transient
@Type(type = "org.hibernatespatial.GeometryUserType")
@Column(name = "the_geom", columnDefinition = "Geometry")
Geometry gml;

@JsonProperty("wkt")
@JsonSerialize(using = JsonGeometrySerializer.class)
public Geometry getGeom() {
    return geom;
}

public void setGeom(Geometry geom) {
    this.geom = geom;
}
现在,我想为来自theu geom列的相同几何体创建一个不同的属性,如@JsonProperty(“gml”),并将其写入输出json中的不同字段。有没有办法在@JsonProperty中指定多个值?我尝试使用getter/setters创建另一个变量,并使用@Trancient,但不确定如何将_geom值发送到该序列化程序。请帮忙

我尝试了类似的方法,但没有成功:

    @Transient
@Type(type = "org.hibernatespatial.GeometryUserType")
@Column(name = "the_geom", columnDefinition = "Geometry")
Geometry gml;

@JsonSerialize(using = JsonGeometrySerializer.class)
public Geometry getGml() {
    return gml;
}

public void setGml(Geometry gml) {
    this.gml = gml;
}

因此,在第一种情况下,几何体应转换为wkt并添加到json,在第二种情况下,几何体应转换为GML格式并添加到GML。我可以使用相同的JsonSerializer类来同时执行这两个任务,还是必须编写一个新的类?

既然您将@JsonSerializer附加到该方法,那么是什么阻止您创建另一个getXXX方法来返回您想要的任何内容,包括相同的值