浏览 9689 次
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-05
表里有三个字段,请问如何借助OGNL在jsp页面里用struts2的iterator标签显示结果? <s:iterator value="?" ...> value里应该写什么? 谢谢! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-03-05
<s:iterator id="item" value="itemList" status="stuts"> <tr> <td class="<s:if test="#stuts.even">gray</s:if>">${stuts.count } </td> <td class="<s:if test="#stuts.even">gray</s:if>">${title } </td> <td class="<s:if test="#stuts.even">gray</s:if>"> <c:if test="${not empty item.categoryId}"> <fmt:message key="${item.categoryId}"/> </c:if> </td> <td class="<s:if test="#stuts.even">gray</s:if>">${ownerName } </td> <td class="<s:if test="#stuts.even">gray</s:if>">${totalTime } </td> <td class="<s:if test="#stuts.even">gray</s:if>"> <c:if test="${item.status == 0}">无效</c:if> <c:if test="${item.status == 1}">有效</c:if> </td> <td class="<s:if test="#stuts.even">gray</s:if>">${description } </td> </tr> </s:iterator> iterator标签中 value:表示Ognl中的属性(简单的来说就是action中Collection的属性) id:相当于在标签中使用的单体参数,类似于<c:foreach />中的var,在遍历体中可以使用 status:表示遍历体中当前状态。如上所示:stuts.count表示当前的次数;stuts.even表示当前是奇/偶行。 要注意的是在Struts2的iterator标签的遍历体中也可不带参数前缀,比如 <td class="<s:if test="#stuts.even">gray</s:if>">${title } </td> 表示item类中的title属性。可以省略 item. 的前缀。但如果同时用到了jstl的标签则需要加前缀,比如 <c:if test="${item.status == 0}">无效</c:if> |
|
返回顶楼 | |
发表时间:2008-03-05
谢谢回答,不过还是不明白。
我说详细点吧,目的很简单,就是输出数据库里一张表的内容,表里包含三个字段. action代码如下: import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; import net.sims.services.StudentServices; public class SearchStudentAction extends ActionSupport { private String studentid; private String name; private String classname; public String getStudentid() { return studentid; } public void setStudentid(String studentid) { this.studentid = studentid; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getClassname() { return classname; } public void setClassname(String classname) { this.classname = classname; } public String execute()throws Exception{ try{ StudentServices studentServices = StudentServices.getInstance(); ArrayList arrayList = (ArrayList)studentServices.retrieveAllStudent(); ServletActionContext.getRequest().setAttribute("allstudent", arrayList); return "success"; } catch (Exception ex) { ex.printStackTrace(); return null; } } } 持久层用的是ibatis,<resultMap>代码如下: <resultMap id="studentResult" class="net.sims.entity.SimpleStudent"> <result column="studentid" property="studentid" jdbcType="VARCHAR" /> <result column="name" property="name" jdbcType="VARCHAR" /> <result column="classname" property="classname" jdbcType="VARCHAR" /> </resultMap> 不懂在jsp里用OGNL和struts2迭代标签应该怎么做?望高手看看应该如何写! |
|
返回顶楼 | |
发表时间:2008-03-05
问题已解决,知耻而后勇.
|
|
返回顶楼 | |