list里面存放了一个Posts对象,Posts对象里面有get,set方法。里面存放了帖子的一些信息。怎么才能将这些信息在JSP里面用 c:forEach 循环出来?
解决方案 »
- 关于WebLogic 的问题 为什么我部署完事后 web页面的index.jsp显示404错误?希望大家帮看看 万分感谢了
- 移动飞信到底有没有提供官方的API供调用?
- Struts2 Ajax 与 Sitemesh整合诡异问题 急急急
- jsp注销问题,(小弟初学,请指教)
- 使用Java2WSDL命令生成WSDL出现[WARN] Unable to generate EPR for the transport : http
- ejb的helloworld无法通过,请高手指点
- tomcat4.1 与 tomcat5.0.28 有什么区别呀????请高手回答以下了!!
- 精通EJB第二版(中文版)
- 报表问题
- 求一个STRUTS实例
- servlet中的Filter和struts2的intercepter实现原理,aop?责任链?
- 关于servlet输出图片的异常:java.lang.IllegalStateException: getWriter() has already been c
for(int i=0;i<list.size();i++){
Posts post=new Posts();
post=list.get(i);
}
<%
for(int i=0;i<list.size();i++){
Posts post=new Posts();
post=list.get(i);
%>
<option><%=post.getName()%></option>
<%
}
%>
</select>
可以在Servlet里把要输出的值放到request或者Session里然后用EL表达式输出
如果你用Struts的话,可以用Struts的标签也可以输出的
比如:request.setAttribute("Posts",Posts);在JSP页面可以这样循环读取:
<c:forEach var="p" items="${requestScope.Posts}">
${p.id} //对应Posts中的getID方法、以此类推。 </c:forEach>不过要导入<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>这个包,才能使用forEace!
例子:
List<Posts> list=new ArrayList<Posts>(); request.setAttribute("Posts",list);标签就这样写:<c:forEach var="p" items="${requestScope.Posts}">
${p.id} //你要循环读出的内容,p代表循环读出来Posts对象
</c:forEach>
声明:${requestScope.Posts}是EL表达式 意思是在request作用域中找到名字为Posts的对象
首先导入工具类<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:choose>
<c:when test="${empty userlist}">
<tfoot><tr><td colspan="3">没有需要输出的数据!</td> </tr></tfoot>
</c:when>
<c:otherwise>
<tbody>
<c:forEach items="${userlist}" var="u">
<tr><td>${u.username }</td>
<td>${u.age }</td>
<td>${u.group.groupname }</td></tr>
</c:forEach></tbody>
</c:otherwise>
</c:choose>
struts:
首先导入框架类
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>
<%@ taglib prefix="logic" uri="http://struts.apache.org/tags-logic"%>
<table border="1">
<thead><tr>
<th>用户</th>
<th>年龄</th>
<th>所属组别</th></tr></thead>
<logic:empty name="userlist"><tfoot>
<tr><td colspan="3">没有需要输出的数据!</td></tr></tfoot></logic:empty>
<logic:notEmpty name="userlist">
<tbody>
<logic:iterate id="user" name="userlist">
<tr><td>
<bean:write name="user" property="username" /></td>
<td><bean:write name="user" property="age" /></td>
<td><bean:write name="user" property="group.groupname" /></td></tr></logic:iterate>
</tbody></logic:notEmpty></table>
其中Action中主要代码写法如下
List userList = new ArrayList();
//做一个多个用户输出
for(int i = 0;i < 10;i++) {
User user = new User();
user.setUsername("user_"+i);
user.setAge(i);
user.setGroup(group);
userList.add(user);
} request.setAttribute("userlist", userList);
以上两者均不会在页面出现java代码,不过后者主要依赖struts框架,前者没有依赖性,希望可以解决楼主的问题!