屬性成員是isXxx時對應的get方式是isXxx,前台jsp取不到這個屬性值


最近在項目中無意設置的boolean變量值為isXxx,用eclipse生成相應的set和get方法,eclipse生成的的boolean類型的get方法為isXxx,前台導致取不到相應的值 

Java代碼   收藏代碼
  1.  public class XxxAction extends BaseAction{  
  2.    private boolean isNumber;  
  3.   
  4.    public boolean isNumber() {  
  5.    return isNumber;  
  6.    }  
  7.    public void setNumber(boolean isNumber) {  
  8.        this.isNumber = isNumber;  
  9.    }   
  10. }  

 

Java代碼   收藏代碼
  1. //前面的jsp代碼已省略,jsp嵌套進js代碼  
  2.      var isNumber = '${isNumber}';//取得后台傳過來的值,取到的值都為''  
  3.  //或者是     
  4.     var isNumber = '<s:property value="isNumber"/>';//取到的值都為''  


   導致以上原因是因為在Action中定義boolean類型的屬性值為isXxx,跟eclipse開發工具生成的get方法名字相同,而前台取值${isNumber}或是<s:property value="isNumber"/>都會調用相應的get方法去取值,這就造成調用時沒法區分是調用的是isXxx()方法還是isXxx屬性,或者兩者都不是.

 

通過El表達式獲取屬性值的時候,屬性不一定媱定義,只需要定義對應的get、set方法也可以


免責聲明!

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



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