logic:iterate 从网上转的

来源:互联网 发布:xpath python 编辑:程序博客网 时间:2024/05/29 01:56

logic:iterate里面的id和name写什么,对应哪里:

<table bgcolor="#ff80ff" border="1"> 
   <tr>  
   <th>工号</th> 
   <th>姓名</th> 
   <th>工作</th> 
   <th>年限</th> 
   <th>工资</th> 
   </tr> 
    <logic:iterate id="emp" name="list">

 <td><bean:write name="emp" property="Empno"/></td> 
    <td><bean:write name="emp" property="Ename"/></td> 
     <td><bean:write name="emp" property="Job"/></td> 
    <td><bean:write name="emp" property="Hiredate"/></td> 
    <td><bean:write name="emp" property="Sal"/></td>    

    </logic:iterate> 
   

</table> 

-------------------------------------------

Java代码 
  1. <logic:iterate id="emp" name="list">   

name属性:是你放置Bean的集合,在你的这段代码中: 


Java代码 
  1. public class QueryAction extends Action {    
  2.   
  3. public ActionForward execute(ActionMapping mapping, ActionForm form,    
  4. HttpServletRequest request, HttpServletResponse response) {    
  5.   
  6. EmpDao empDao = new EmpDao();    
  7. ArrayList list = empDao.empName();    
  8. //System.out.println(list);    
  9. request.setAttribute("list", list);    
  10.   
  11. return new ActionForward("/display.jsp");    
  12. }    
  13. }   

Java代码 
  1. request.setAttribute("list", list);  
你是将list放入到request范围内,对应的名字是list,如果你要是写成
Java代码 
  1. request.setAttribute("myList", list);  
,那么,logic:iterator中的name属性就要为"myList". 
logic:iterator中的id属性,其实是你要从你的集合中取出的Bean的名字这个名字是任意起的,主要是下面的<bean:write name="emp" property="Ename"/>标签中的name属性要跟logic:iterator中的id属性对应上.其实这里的是这样的,首先<logic:iterator>标签会把name属性值为list的集合里的bean逐一取出来,每取出来一个,就把他存到名为id属性的值的pageContext范围内,一看代码你就能明白: 
主要代码: 
Java代码 
  1. //首先取出List,getAttribute()方法中的值就是<logic:iterator>标签的name   
  2. //值   
  3. List list=request.getAttribute("list");   
  4. //然后把取出来的bean存入pageContext范围内,对应的名字就是id的值   
  5. pageContext.setAttribute("emp",bean);   
  6. //<bean:write>标签其实就是利用反射把Bean从相应的范围内取出   
  7. pageContext.getAttribute("emp");  

转载至:http://www.blogjava.net/michaellee/articles/265251.html


原创粉丝点击