重命名Spring中MappingJacksonJsonView使用的JSON字段

我正在使用MappingJacksonJsonView将类序列化为JSON,但是,我希望能够根据getter名称重命名默认名称中的某些字段。

这是因为我要为jQuery文件上传输出“delete_url”和“delete_type”等字段名称。 我正在使用@Jsonserialize注释手动选择要序列化的字段。

@JsonAutoDetect(getterVisibility = Visibility.NONE) public interface Picture { @JsonSerialize String getName(); @JsonSerialize String getDelete_url(); ... 

例如,我被迫调用方法getDelete_url() ,而我想将其称为getDeleteUrl() ,但在序列化为JSON时仍然输出密钥"delete_url"

您应该能够使用@JsonProperty进行资格@JsonProperty

 @JsonAutoDetect(getterVisibility = Visibility.NONE) public interface Picture { @JsonSerialize @JsonProperty("name") String getName(); @JsonSerialize @JsonProperty("delete_url") String getDeleteUrl(); //... 

您是否尝试过使用@JsonProperty注释?

“定义逻辑属性的名称,即用于属性的Json对象字段名称:如果为空String(这是默认值),将使用带注释的字段的名称。”