在Bean傳值過程中出現傳值失敗

通過Servlet傳值給jsp頁面,例如
這個Bean的組成爲

    private String System;  
    private String IpAddr;
    private String MacAddr;
    
       public String getSystem() {
           return System;
       }
       public void setSystem(String System) {
           this.System = System;
       }
       public String getIpAddr() {
           return IpAddr;
       }
       public void setIpAddr(String IpAddr) {
           this.IpAddr = IpAddr;
       }
       public String getMacAddr() {
           return MacAddr;
       }
       public void setMacAddr(String MacAddr) {
           this.MacAddr = MacAddr;
       }

通過下列方式傳值:

request.setAttribute("Last_IP_Beans",Last_IP_Beans);

通過下列方式接受值:

        <c:forEach var="ip_info" items="${requestScope.Last_IP_Beans}">
        	<tr>
        		<%count++; %>
        	    <td ><em><%=count %></em></td>
                <td>${ip_info.IpAddr}</td>
                <td>${ip_info.MacAddr}</td>
                <td>${ip_info.System}</td>
            </tr>
        </c:forEach>

發現傳值失敗。
後來發現,將定義中

    private String System;  
    private String IpAddr;
    private String MacAddr;

改成

    private String system;  
    private String ipAddr;
    private String macAddr;

仔細看,對,把開頭大寫改成小寫了。相對應的,接受值的時候也改成小寫。

        <c:forEach var="ip_info" items="${requestScope.Last_IP_Beans}">
        	<tr>
        		<%count++; %>
        	    <td ><em><%=count %></em></td>
                <td>${ip_info.ipAddr}</td>
                <td>${ip_info.macAddr}</td>
                <td>${ip_info.system}</td>
            </tr>
        </c:forEach>

這樣就不會出問題了。
原因不明,可能是有些地方不區分大小寫,有些地方又嚴格大小寫吧。

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