1.迭代List(hql组装出来的对象)
hql:
String hql = "select (select b.rotaname from RunRota b where b.rotaid=a.rotaid),a.classid,a.classname from RunClass a where a.rotaid in "
+" (select c.rotaid from PlanRota c where "
+" c.startdate = (select max(b.startdate) from PlanRota b where b.factoryid="+runFactoryId+" and b.startdate < current_date) and c.factoryid="+runFactoryId+") order by a.orderno ";
在ACTION中设值:
request.setAttribute("classes", classes);
迭代方法:
<select name="classId" style="width:140px">
<c:forEach var="class" items="${classes}">
<c:choose>
<c:when test="${runReturncardForm.classId==class[1]}">
<option value="${class[1]}" selected>
${class[0]}|${class[2]}
</option>
</c:when>
<c:otherwise>
<option value="${class[1]}">
${class[0]}|${class[2]}
</option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
说明:这个时候是根据List的下标对值进行引用的
2.迭代HashMap
在ACTION中设值,factories为一个构造好的HashMap:
在ACTION中设值:
request.setAttribute("factories",factories);
迭代方法:
<select name = "factoryid" id = "factoryid" style="width:138px">
<c:forEach var="factory" items="${factories}">
<option value="${factory.key}">
${factory.value}
</option>
</c:forEach>
</select>
说明:这个时候是根据HashMap的key和value对值进行引用的
1.迭代List(对应表记录)
这种情况最常见,也就是直接迭代我们从后台组装好的一条一条的记录对象
在ACTION中设值:
returnCards = returncardService.findReturnCard();
request.setAttribute("returnCards ",returnCards );
<c:forEach var="returnCard" items="${returnCards}">
<tr class="trbai">
<TD height="27" align="center" noWrap>${returnCard.returntime}</td>
<TD height="27" align="center" noWrap>
<c:forEach var="returnerName" items="${returnerNameMap}">
<c:if test="${returnCard.returner == returnerName.key}">
${returnerName.value}
</c:if>
</c:forEach>
</td>
<TD height="27" align="center" noWrap>
${returnCard.cardcode}
</td>
<TD height="27" align="center" noWrap>
<a href="javascript:dispDetail('${returnCard.tid}');" >查看详细</a>
</td>
</tr>
</c:forEach>
说明:这个时候是根据对象的属性对值进行引用的
分享到:
相关推荐
例如,我们可以用JSTL遍历一个包含汉字信息的列表,展示每个汉字的拼音和部首: ```jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ... ${characters}" var="charInfo"> 汉字:${charInfo...
jstl取得list的长度,纯代码,本人已经验证可用。共享给大家
1. 引入JSTL库:在web.xml配置文件中添加JSTL的依赖,或者在pom.xml(如果使用Maven)中导入对应的JSTL库。 ```xml <!-- 在web.xml中 --> <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri> ...
JSTL的使用可以极大地提高开发效率,因为它允许我们用更简洁、更易读的方式来处理常见的JavaWeb任务,比如迭代、条件判断、数据操作等,而无需使用传统的Java脚本语法`<% %>`。 **JSTL的主要组成部分:** 1. **...
在 jstl 中,判断 list 中是否包含某个值可以使用 c:forEach 标签和 c:if 标签来实现。下面是一个简单的示例代码: ```jsp ${sessionScope.SelectDeviceIdsList}" var="map"> ${map.key eq device[0]}"> ${...
1. **Core库**:提供基础操作,如变量管理、迭代、条件判断以及URL操作。 2. **Format库**:用于数据格式化,尤其是数字和日期,同时也支持国际化。 3. **XML库**:处理XML数据。 4. **SQL库**:处理与关系数据库的...
如果项目运行在较新的容器上,推荐使用JSTL1.1以获得更好的兼容性和性能。 **使用方法** 要使用JSTL,需要在项目的类路径中包含相应的jar文件,并在JSP页面中通过`<%@ taglib %>`指令导入标签库。例如,导入JSTL...
JSTL是一个标准的标签库,提供了许多预定义的标签,可以简化常见的任务,如迭代、条件判断、XML处理等,避免了在页面上过多地使用脚本let和scriptlet。 "jstl-impl-1.2.jar"和"jstl-api-1.2.jar"是JSTL 1.2版本的两...
接下来,可以在JSP页面中使用JSTL标签,例如,用`<c:forEach>`进行迭代,`<c:if>`进行条件判断: ```jsp ${list}" var="item"> ${item.name}"/> ``` 这里,`${list}`是EL表达式,用来获取Java后台传入的数据,`...
总之,JSTL和EL的结合使用,能够极大地提升JSP页面的可维护性和效率,让代码更加简洁,更符合MVC设计模式,从而降低开发和维护的复杂度。在实际开发中,应当充分利用这两个工具来提高代码质量。
使用JSTL时,需要将这两个JAR包放入Web应用的`WEB-INF/lib`目录下,以确保服务器能够正确识别并执行标签。在JSP页面中,需要通过以下方式引入JSTL库: ```jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/...
在这个压缩包中的"jdk8+tomcat9版本以下使用JSTL.zip"包含了适用于这些环境的JSTL和Standard Tag Library的jar文件。 **1.2新版本JSTL** 1.2版本的JSTL是一个较新的发行版,相比早期版本,它可能包含更多的功能...
我们仍然使用来遍历list集合,但在标签体内,再次使用标签来迭代data变量(此时的data是一个Map对象): ```jsp ${list}" var="data"> ${data}" var="test"> ${test.key}:${test.value} ``` 在这个嵌套的迭代...
JSTL的核心组件包括Core、I18n、SQL和XML四个部分,分别对应基本操作、国际化、数据库操作和XML处理。 `jstl.jar`是JSTL库的主文件,包含了JSTL的API和实现。它提供了如 `<c:if>`、`<c:forEach>`、`...
同时,JSTL还可以和其他标签库(如fmt、sql、function等)配合使用,实现更复杂的逻辑。 总之,JSTL遍历是Java Web开发中的重要工具,通过使用`<c:forEach>`标签,我们可以轻松地处理各种集合数据,将其展示在用户...
Standard库1.2是JSTL的核心依赖,它包含了EL(Expression Language)的实现,EL是JSP 2.0引入的表达式语言,用于在JSP页面中便捷地访问和操作Java对象。Standard库1.2还提供了对JSTL Core、fmt、fn、sql和xml标签的...
在使用JSTL时,有两个核心的JAR文件是必不可少的:`jstl.jar`和`standard.jar`。这两个文件包含了JSTL的核心实现和相关的支持库。 1. `jstl.jar`:这是JSTL的主要库文件,包含了JSTL的所有核心标签类和接口。这些...
在Java Web开发中,JSTL(JavaServer Pages Standard Tag Library)和Standard库是两个非常重要的组件,它们主要用于增强JSP页面的功能,提高代码的可读性和可维护性。当我们在开发过程中遇到...
**JSTL(JavaServer Pages Standard Tag Library)与EL(Expression Language)是Java Web开发中的两个重要组件,它们极大地简化了JSP页面的编写和管理,使得代码更加清晰和易于维护。** **JSTL** 是一个标准的标签...
JSTL的主要目标是减少在JSP页面中使用脚本元素,从而提高代码的可读性和维护性。 `jstl-api-1.2.jar` 和 `jstl-impl-1.2.jar` 是JSTL的两个关键组件: 1. **jstl-api-1.2.jar**:这是JSTL的API接口定义,包含了...