1. 程式人生 > >Struts2的Action向JSP傳輸List集合並且將資料顯示在頁面上

Struts2的Action向JSP傳輸List集合並且將資料顯示在頁面上

1、當型別是List<String>時

 Action中程式碼:

List<String> list = new ArrayList<String>();
            list.add("zhangsan");
            list.add("lisi");
            list.add("wangwu");
        ActionContext.getContext().put("list", list);
        return SUCCESS;

 JSP中程式碼:

匯入標籤庫:

<%@ taglib prefix="s" uri="/struts-tags"%> 

用 Struts2的s標籤:

 <center>
    	<s:iterator id="li" value="list" status="">
    	<s:property value="li"></s:property></br>
    	</s:iterator>	
    </center>

 迭代迴圈之後會將List集合中的String型別的資料一一顯示在頁面上。

2、當型別是List<User>(User是實體類)時

Action中程式碼:

List<User> list= new ArrayList<User>();
ActionContext.getContext().put("list", list);

當User中有name、password等多個屬性時,我們從資料庫中查詢取出多條記錄,放入List<User>集合中,然後傳輸到JSP並顯示在頁面上:

<s:iterator value="list" status="li">
<s:property value="username"/></br>
<s:property value="password"/></br>
</s:iterator>

上面的程式碼同樣需要匯入標籤庫,也可以對顯示的資料內容進行包裝。

順便提一下,當資料型別為Map集合時,實現程式碼與型別為List<User>時類似,JSP用s標籤根據Map集合中的key來取值:<s:property value="key"/>