Json 扁平化對象 @JsonUnwrapped

@Data
public class Account {

    @JsonUnwrapped
    private Location location;
    @JsonUnwrapped
    private PersonInfo personInfo;

    @Data
    public static class Location {
        private String provinceName;
        private String countyName;
    }

    @Data
    public static class PersonInfo {
        private String userName;
        private String fullName;
    }

}

未扁平化之前:

{
    "location": {
        "provinceName":"廣東",
        "countyName":"深圳"
    },
    "personInfo": {
        "userName": "111",
        "fullName": "222"
    }
}

使用 @JsonUnwrapped 扁平對象之後:

{
  "provinceName":"廣東",
  "countyName":"深圳",
  "userName": "111",
  "fullName": "222"
}

不同對象間有相同名稱的屬性?會怎麼樣,會報錯嗎?答案是不會,都會正常返回,只是對前端而言有歧義罷了~,此時可以藉助 @JsonUnwrapped 的 suffix 和 prefix 來規避這個問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章