Java Bean 命名規則

      在SSH框架中寫寫某個添加功能,發現數據庫中的某個字段居然沒有改變。頁面數據傳到後臺,我用的是ajax的序列化。因而我打印序列化後的數據,發現頁面數據沒有問題,可是當數據傳後後臺的action裏面的時候,方向這個 private  int pCount;這個的值是0.這個的數據居然沒有傳過來,顯示是 0 。這就有點尷尬了。java

     因爲不知道這個問題出如今哪裏,因而經過百度,在百度上面的無數資料中查看相關問題。經過漫長的百度。終於發現了問題所在,原來是個人這個字段命名出現了問題。ajax

網上說:javabean屬性命名儘可能使用常規的駝峯式命名規則。數據庫

    當時寫了 private int pCount. 而且使用myeclipse裏面的功能生成其的get和set方法。看下生成的方法:框架

    若是和javabean屬性命名儘可能使用常規的駝峯式命名規則對照着看 你就會方向問題了。規則:eclipse

1. 對於常規屬性  <propertyName> , 屬性名稱的第一個單詞小寫且字母個數大於1,第二個單詞首字母大寫  。對應的getter/setter方法名爲:get /set +  <PropertyName>(), 即屬性名稱的第一個單詞的首字母改爲大寫, 前面再加上"get"或"set"前綴。spa

2. 對於布爾類型 <propertyName> , 能夠按常規屬性的規則編寫getter/setter方法外, getter方法能夠使用 is +  <PropertyName>()的形式來代替。ip

3. 對於很是規屬性<pName>, 屬性名稱的第一個單詞小寫且字母個數等於1,第二個單詞首字母大寫  。get

這樣就能夠發現問題了。生成的get和set方法的除get/set外的首字母必須大寫,而這裏確實小寫,這就會出現前面的問題,頁面的參數傳不到action。io

之後須要避免:屬性名第一個單詞儘可能避免使用一個字母:如pCount。
                   boolean屬性名避免使用 「is」 開頭的名稱
後臺

相關文章
相關標籤/搜索