Spring表單參數綁定中對“is”開頭的boolean類型字段的的處理


之前在新浪微博上面發了一個微薄:

  弱弱的發現在定義boolean類型的時候最好不要使用“is”開頭,可以避免一些問題哦

 

然后有一些朋友朋友問我為什么,當時比較忙,現在寫篇文章舉一個例子,回復一下這個問題。

最近在使用Spring MVC的時候vo定義了一個字段,一開始字段名字為:isAddCertificateInfo, 相應的get和set方法如下:

   public boolean isAddCertificateInfo() {
        return isAddCertificateInfo;
    }

    public void setAddCertificateInfo(boolean isAddCertificateInfo) {
        this.isAddCertificateInfo = isAddCertificateInfo;
    }

 

而前端form表單中定義的為: 

<input type="hidden" name="isAddCertificateInfo" id="isAddCertificateInfo" value="true"/>

 

  

但是測試發現后端一直拿不到值。然后我就想起了以前在使用某個框架提供的BeanUtil進行屬性復制時候遇到的問題,當時就是因為boolean類型字段以is開頭。

后來我嘗試性的將這個字段名字改為了:addCertificateInfo,然后增加get和set方法:

  public boolean isAddCertificateInfo() {
        return addCertificateInfo;
    }

    public void setAddCertificateInfo(boolean addCertificateInfo) {
        this.addCertificateInfo = addCertificateInfo;
    }

 

  

這樣修改了之后,就可以在后端接收到值了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM