c:forEach中对List的遍历,list每一个对象不是bean,而是String,在JSP中,怎么JSTL循环输出list内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c:forEach中对List的遍历,list每一个对象不是bean,而是String,在JSP中,怎么JSTL循环输出list内容相关的知识,希望对你有一定的参考价值。

c:forEach中对List的遍历,list每一个对象不是bean,而是String,在JSP中,怎么JSTL循环输出list内容
就是list中有多行,每行有多列
知道的请回答下,谢谢啦!!

Action中:

    private List<Message> messageList;//省略get,set方法

    @Action("/findAllMessageAOP")
    public String findAllMessageAOP() throws Exception 

    messageList=messageManager.queryAll();
    return "find";//跳转到对应的jsp页面
    Jsp页面的显示:

<s:iterator value="messageList">
<%--用EL表达式直接调用属性循环输出对象的各个属性值--%>


<td>$messageID </td>
<td>$messageSendTime </td>
<td>$messageValidTime</td>
<td>$messageValidTime</td>
<td>$messageContent </td>
</tr>
</s:iterator><c:forEach var="message" items="$messageList">

<%--用EL表达式调用list对象的属性循环输出对象的各个属性值--%> 

<tr>
<td>$message.messageID</td>
<td>$message.messageSendTime</td>
<td>$message.messageValidTime</td>
<td>$message.messageValidTime</td>
<td>$message.messageContent
</td>
</tr>

</c:forEach>

呈现效果如下:

参考技术A string类型可以这样直接输出
<c:forEach items="$list" var="info">
$info
</c:forEach>
参考技术B <h5>循环遍历对象的集合</h5>
先创建一个User实体类,内有属性username,password,提供get和set方法,无参有参构造方法。

<%
List<User> uList=new ArrayList<User>();
uList.add(new User("张无忌","123"));
uList.add(new User("杨过","456"));
uList.add(new User("慕容子宁","789"));
uList.add(new User("郭靖","147"));
request.setAttribute("uList", uList);
%>
<c:forEach var="user" items="$uList ">
$user.username :$user.password
</c:forEach>
参考技术C 以用户信息为例:
先把List的变量users放入request中

<c:forEach items="$users" var="user">
用户名: $user.userName
</c:forEach>

C:foreEach

 

<c:foreach>用法

 
<c:foreach>类似于for和foreach循环   以下是我目前见过的用法:
1、循环遍历,输出所有的元素。
<c:foreach items="${list}" var="li">
${li}
</c:foreach>
注意:items 用于接收集合对象,var 定义对象接收从集合里遍历出的每一个元素。同时其会自动转型。
2、循环遍历,输出一个范围类的元素。
<c:foreach items ="${lis}" var = "li " begin="2" end ="12">
${li}
</c:foreach>
注意:begin 定义遍历的开始位置,end定义遍历的结束位置。begin 和end的引号必须写。
3、循环遍历,输出除某个元素以外的元素或输出指定元素。
<c:foreach items="${list}" var ="li" varStatus="status">
<c:if text="${status.count==1}>
${"第一个元素不要"}
</c:if>
${li}
</ c:foreach>
注意:varStatus 表示当前集合的状态(其实是不是,我也不太清楚,只知道这样用,会的人指点下),count为循环一个计算器。
4、循环遍历,输出第一个或最后一个元素。
<c:foreach items="${list}" var ="li" varStatus="status">
<c:if text="${status.first}">我是第一个元素</c:if>
<c:if text="${status.last}">我是最后一个元素</c:if>
</c:foreach>
注意:first表示如果是一个元素,则返回ture,反之则返回false
           last 表示如果是最后一个元素,则返回ture,反之则返回false。
5、循环遍历,按指定步长输出。
<c:foreach items="list" var ="li" step="2">
${li}
</c:foreach>













以上是关于c:forEach中对List的遍历,list每一个对象不是bean,而是String,在JSP中,怎么JSTL循环输出list内容的主要内容,如果未能解决你的问题,请参考以下文章

用<forEach>遍历list集合时,提示我找不到对象的属性

c:foreach标签取不到值,

用<forEach>遍历list集合时,提示我找不到对象的属性。

集合LIST中每个元素都是MAP集合的键,在JSP中循环遍历LIST时,如何用EL表达式取得改遍历值在MAP中对应值

freemarker list怎么遍历 多行每行显示4个

list集合