action 传递 List 给 JSP

 

 

 
public class disp extends ActionSupport{
private List <Disp> list;
 
public void setList(List list){
  this.list = list;
}
public void getList(){
  return list;
}
public String execute(){
  DispImpl dao = new DispImpl();
  list = dao.GetAll();
  return  SUCCESS;
}
 


 

<s:iterator id="rv" value="list">
 <s:property id="rv" value="content"/>
 </s:iterator>

 list里面保存的是个对象,content只是这个对象的属性名而已 


Struts2有com.opensymphony.xwork2.ActionContext这么个类

static ActionContext getContext() 
          Returns the ActionContext specific to the current thread. 

Map getParameters() 
          Returns a Map of the HttpServletRequest parameters when in a servlet environment or a generic Map of parameters otherwise. 

还有个ValueStack也可以用

 

想直接操作request对象可以用org.apache.struts2.ServletActionContext

HttpServletRequest request = ServletActionContext.getRequest();

可以了

jsp

 <s:iterator value="list">
     <s:property value="MenuID"/>
     </s:iterator>

还是谢谢二楼

 奇怪为什么用
<s:iterator value="list">
     <s:property value="#menuinfo.MenuID"/>
     </s:iterator>
取不到呢? 


 

 

 

二:

ActionContext.getRequest().put("list", list);

<s:iterator value="#request.list"> 
	<s:property value="id" />
</s:iterator>

 

三:

<s:iterator value="list">
   <s:property value="id" />
</s:iterator>   前提: 有成员变量(因为parameterInterceptor自动把成员变量放入valuestack)

 <s:iterator var="a" value="#list">
   <s:property value="#a.id" />
 </s:iterator>
都可以.
  ActionContext.getRequest().put("list", list);这种用法不可取; 没写成员变量的话,用ActionContext.getContext()getValueStack().set("list",list)即可,但是jsp中list前面不要有#    



四:日期的格式转换:

<s:date name="birthday" format="yyyy-MM-dd" /> 这个可以
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值