1. 程式人生 > 實用技巧 >@Data註解踩坑之大小寫

@Data註解踩坑之大小寫

@參考文章

日前用swagger測試的時候發現,返回的物件屬性名與實際不一致,比如返回的屬性名有fDate,前端接到的是fdate,理所當然的獲取不到java返回的fDate的值

同事懷疑是小寫f引起的,一度要把他們自己的所有程式碼f開頭的都改掉。我將信將疑,沒有立即改。今天有空debug了一下,看到java返回的物件屬性確實是大寫的,猜想可能是註解引起的。排除swagger註解後,鎖定在了@Data註解上,於是去掉了lombok.Data註解,手工生成getter、setter,一切正常了。然後百度了下這個註解,果然有特殊情況,當屬性名子二個字母大寫的時候,需要指定@JsonProperty及其value。或者,你可以手動getfDate和setfDate

    @JsonProperty("fDate")
    private Object fDate;

    private Object fDate;
    public Object getfDate() {
        return fDate;
    }
    public void setfDate(Object fDate) {
        this.fDate = fDate;
    }