日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Struts2-从值栈获取list集合数据(三种方式)

發布時間:2024/10/5 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Struts2-从值栈获取list集合数据(三种方式) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

創建User封裝數據類

public class User {private String username;private String password;public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;} }

創建ValueStackActiono邏輯操作類

import cn.web.body.User; import com.opensymphony.xwork2.ActionSupport;import java.util.ArrayList; import java.util.List;public class ValueStackActiono extends ActionSupport {private List<User> list=new ArrayList<>();public List<User> getList() {return list;}@Overridepublic String execute(){User user=new User();user.setUsername("k1");user.setPassword("hao");list.add(user);User user1 = new User();user1.setUsername("k2");user1.setPassword("zms");list.add(user1);return "success";} }

配置Struts.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"> <struts><package name="myk" extends="struts-default" namespace="/"><action name="valueAction" class="cn.web.action.ValueStackActiono"><result name="success">/WebContent/ValueStack.jsp</result></action></package> </struts>

第一種方式:創建如下jsp文件,核心代碼如下

<s:property value="list[0].username"/><s:property value="list[0].password"/><br><s:property value="list[1].username"/><s:property value="list[1].password"/>

第二種方式:同上

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

流程:通過迭代器遍歷的方式,遍歷list集合中的每一個User對象,然后進行輸出

第三種方式:同上

<s:iterator value="list" var="user"><s:property value="#user.username"/><s:property value="#user.password"/></s:iterator>

流程:該方式最為常用,遍歷值棧list集合,得到每個User對象機制,把每次遍歷出來的User對象放到context里面。
獲取context里面數據的特點:寫ognl表達式,使用特殊符#(root和context兩種數據存放方式,該方式存在context提高了取數據得效率,減少了從root的壓力 ----- nice兄dei)
我們都知道context里面是以Map集合形式存在的(詳見我的博客),該方式會在context里面分配一個key-value的形式的空間,其中的key值就是代碼中的var屬性值,value就不必多說了。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Struts2-从值栈获取list集合数据(三种方式)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。