2014-05-06 65 views
0

我試圖發送一個列表作爲參數到一個JSP文件,我希望它顯示。 我的JSP文件名爲showList.jsp。發送列表對象作爲參數到jsp端

已經創建了一個servlet,我用它來控制我的程序中的所有內容。當將執行上的一個按鈕「顯示列表」一些代碼在用戶點擊,而這段代碼將打印出來的清單:

我的代碼:

if (session.getAttribute("show") == "show") { 

     List opr = null; 
     try { 

      opr = func.showlist(opr); 
      for(int i = 0; i < opr.size(); i++){ 
       System.out.println(opr.get(i)); 
      } 

     } catch (Exception e) { 

      System.out.print("Error found, when trying to show list"); 

     } 

     session.removeAttribute("administrator"); 
     session.removeAttribute("show"); 
     session.removeAttribute("create"); 
     return; 

    } 

在這裏你可以看到它只是打印什麼在我的arraylist(大小)。

更新代碼:

List opr = null; 
     try { 

      opr = func.showlist(opr); 
      for(int i = 0; i < opr.size(); i++){ 
       System.out.println(opr.get(i)); 

      } 
      request.setAttribute("list", opr); 

     } catch (Exception e) { 

      System.out.print("Error found, when trying to show list"); 

     } 

     session.removeAttribute("administrator"); 
     session.removeAttribute("show"); 
     getServletConfig().getServletContext().getRequestDispatcher("/getList.jsp"); 

    } 
+1

'== 「秀」'開不看好。你應該使用'equals'方法來檢查兩個對象的狀態是否相同。 – Pshemo

+0

最新的問題是什麼? – maxx777

+0

oki ..我改變了thx到目前爲止:) – Raaydk

回答

1

JSP JSTL嘗試迭代列表中JSP

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
... 

<c:if test="${not empty list}"> 
    <table> 
     <c:forEach var="x" varStatus="status" items="${list}"> 
      <tr> 
       <td><c:out value="${x}" /></td> 
      </tr> 
     </c:forEach> 
    </table> 
</c:if> 

只需設置的數據作爲使用ServletRequest#setAttribute()請求屬性。

如需試樣在下面的帖子看看: