`

JSTL 逆序输出

    博客分类:
  • j2ee
阅读更多
      最近在写代码,有一个功能,需要把后台传递到前台的数据逆序输出,本想通过Collections.reverse(list);对list中的数据进行逆序排列后再传递到后台,但想到for循环都可以逆序输出,就想JSTL是否也有可以进行相关操作,结果搞了半个多钟才写出了下面一段代码
<%@page import="com.jasper.domain.Person"%>
<%@page import="java.util.List"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%
	//Person对象中有两个属性,age和name
	List<Person> persons = new ArrayList<Person>();
	Person person1 = new Person();
	person1.setAge(12);
	person1.setName("小明");
	persons.add(person1);
	Person person2 = new Person();
	person2.setAge(13);
	person2.setName("阿飞");
	persons.add(person2);
	request.setAttribute("persons", persons);
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSTL逆序循环</title>
</head>
<body>
	<div>正序</div>
	<div>
		<table>
			<thead>
				<tr>
					<th>年龄</th>
					<th>姓名</th>
				</tr>
			</thead>
			<tbody>
				<c:forEach var="person" items="${persons }">
					<tr>
						<td>${person.age }</td>
						<td>${person.name }</td>
					</tr>
				</c:forEach>
			</tbody>
		</table>
	</div>
	<br />
	<div>逆序</div>
	<div>
		<table>
			<thead>
				<tr>
					<th>年龄</th>
					<th>姓名</th>
				</tr>
			</thead>
			<tbody>
				<c:set var="startIndex" value="${fn:length(persons)-1 }"></c:set>
				<c:forEach var="person" items="${persons }" varStatus="status">
					<tr>
						<td>${persons[startIndex - status.index].age }</td>
						<td>${persons[startIndex - status.index].name }</td>
					</tr>
				</c:forEach>
			</tbody>
		</table>
	</div>
	<br />
</body>
</html>

 

分享到:
评论

相关推荐

    jsp jstl 递归 输出树 Tree 后台 Java 集合 递归 实现通用 树Tree

    本主题将深入探讨如何使用Java集合、JSP和JSTL来递归地创建并输出树形结构(Tree),特别是用于前端展示。 首先,我们要理解Java集合在构建树结构中的作用。在Java中,可以使用ArrayList、LinkedList或者自定义的...

    jstl-1.2.jar免费下载

    jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2...

    jstl-1.2.1 jar

    jstl-1.2.1,之前的版本需要在服务器中配置一下,而且它分成了两个jar(jstl.jar和standard.jar)还有一个tld文件,而1.2已经不用配置了,直接把javax.servlet.jsp.jstl-1.2.1.jar和javax.servlet.jsp.jstl-api-1.2.1...

    jstl 遍历_jstl遍历_

    **JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中常用的一组标签库,它提供了一系列标准的标签来简化JSP页面的编写,提高代码的可读性和可维护性。在JSP中,我们经常需要遍历集合数据,如数组、...

    jstl标签jar包(jstl-api-1.2和jstl-impl-1.2)

    `jstl-api-1.2.jar` 和 `jstl-impl-1.2.jar` 是JSTL的两个关键组件: 1. **jstl-api-1.2.jar**:这是JSTL的API接口定义,包含了所有JSTL标签库的接口和抽象类。开发人员在编写JSP页面时需要导入这个包,以便使用...

    JSTL中文帮助文档

    **JSTL(JavaServer Pages Standard Tag Library)中文帮助文档** JSTL 是一套用于 JavaServer Pages (JSP) 的标准标签库,旨在简化 JSP 开发,提高代码的可读性和可维护性。它提供了多种核心标签和扩展标签,包括...

    jstl1.1和jstl1.0

    **JSTL1.1与JSTL1.0详解** JavaServer Pages Standard Tag Library (JSTL) 是一个用于简化JavaServer Pages (JSP) 开发的标签库,它提供了一系列预定义的标签,帮助开发者处理常见的任务,如迭代、条件判断、XML...

    JSTL

    JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;JSTL&gt;&gt;&gt;

    JSTL.rar_JSTL_JSTL下载

    **JSTL(JavaServer Pages Standard Tag Library)详解** JSTL,全称为JavaServer Pages Standard Tag Library,是Java EE平台中的一个标准标签库,它为JSP开发者提供了丰富的、可重用的组件,用于处理常见任务,如...

    jstl帮助 jstl帮助手册 jstl帮助文档

    `&lt;x:parse&gt;`用于解析XML字符串,`&lt;x:out&gt;`用于输出XML内容。 5. **SQL标签库**:虽然在现代Web应用中不常用,但仍然包含了一些执行数据库查询、处理结果集的标签,如`&lt;sql:update&gt;`、`&lt;sql:query&gt;`等。 使用JSTL的...

    jstl练习实例,学习JSTL

    - `&lt;c:out&gt;`:安全地输出变量值,防止XSS攻击。 - `&lt;c:if&gt;`和`&lt;c:choose&gt;`:条件判断。 - `&lt;c:forEach&gt;`:遍历集合或数组。 - `&lt;c:import&gt;`:动态导入资源。 - `&lt;c:redirect&gt;`和`&lt;c:forward&gt;`:控制请求的转发和...

    jstl学习大全,jstl源码,很全的jstl学习代码

    Core库是JSTL中最基础的部分,包含了很多用于控制流程、处理URL、输出内容等的标签。例如: - `&lt;c:if&gt;`:条件判断 - `&lt;c:choose&gt;`、`&lt;c:when&gt;`、`&lt;c:otherwise&gt;`:多条件选择 - `&lt;c:forEach&gt;`:循环遍历 - `&lt;c:set&gt;`...

    jstl标准开发jar包

    1. **JSTL核心库**:JSTL的核心库(`jstl.jar`)包含了执行常见Web任务的基本标签,如`&lt;c:out&gt;`用于输出变量,`&lt;c:if&gt;`和`&lt;c:choose&gt;`进行条件判断,`&lt;c:forEach&gt;`进行循环操作等。这些标签极大地提高了代码的可读性...

    jstl-api-1.2.jar、jstl-impl-1.2.jar

    - `&lt;x:out&gt;`:输出XML节点内容 - `&lt;x:transform&gt;`:使用XSLT转换XML **国际化(I18N)模块** 支持多种语言的显示: - `&lt;fmt:message&gt;`:获取并显示资源包中的消息 - `&lt;fmt:bundle&gt;`:加载资源包 - `&lt;fmt:setBundle&gt;...

    JSTL相关Jar包(jstl+standard)

    JSTL,全称为JavaServer Pages Standard Tag Library,是Java服务器页面标准标签库,它提供了一系列的标签来简化JSP开发,使开发者能够更高效地编写动态网页。JSTL的主要目标是减少在JSP页面中使用脚本元素,提升...

    用jstl输出一个菱形

    通过以上分析,我们可以看到,利用JSTL的`&lt;c:forEach&gt;`标签,结合适当的循环逻辑,可以在JSP页面上灵活地输出各种图形,如菱形。这对于学习JSTL和JSP的初学者来说,是一个很好的实践案例,既锻炼了逻辑思维,又加深...

    JSTL教程

    例如,`&lt;x:parse&gt;`用于解析XML字符串,`&lt;x:out&gt;`用于输出XML节点。 **4. SQL标签库**:提供与关系数据库交互的功能,如执行SQL查询、处理结果集等。例如,`&lt;sql:query&gt;`用于执行SQL查询,`&lt;sql:update&gt;`用于更新...

    jstl-jar包

    **JSTL(JavaServer Pages Standard Tag Library)**是一个用于JavaServer Pages(JSP)的标签库,旨在简化Web应用程序的开发。它提供了一系列预定义的标签,使得开发者可以通过简单的XML标记来处理常见任务,而无需...

    jstl-api-1.2和jstl-impl-1.2

    jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2

    jstljar包包含jstl.jar和standard.jar文件

    **JSTL(JavaServer Pages Standard Tag Library)**是一个用于JSP的标准标签库,它提供了一系列的标签,用于简化JSP页面中的业务逻辑处理。JSTL的主要目标是提高JSP开发的可维护性和可读性,通过使用预定义的标签,...

Global site tag (gtag.js) - Google Analytics