JSTL学习笔记

很浅的一个JSTL学习例子。

<%@page import="vo.*" %>
<%@page import="java.util.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
   
   Message msg= new Message();
   request.setAttribute("msg",msg);
   Map<String,String> names= new HashMap<String,String>();
   names.put("1","Ziccy");
   names.put("2","Lily");
   names.put("3","Linda");
   names.put("4","Mary");
   pageContext.setAttribute("names",names);
   
%>

1、JSTL中<c:set>的三种用法

<body>
<!-- value的值存储到varname中-->
<c:set value="BJ" var="city"></c:set>
<p><c:out value="${city}"></c:out></p>//页面输出BJ
<!-- 本体的值存储到varname中-->
<c:set var="country">CHINA</c:set>
<c:out value="${country}"></c:out>//页面输出CHINA
<!-- value的值储存至target对象的属性中-->
<c:set value="Ziccy" target="${requestScope.msg}" property="username" ></c:set>
<p><c:out value="${requestScope.msg.username}"></c:out></p>

<body>

2、JSTL遍历Map

<c:forEach var="name" items="${names}">
<p>${pageScope.name.key}:${name.value}  </p>
</c:forEach>

3、JSTL中按需遍历字符串

<c:forTokens items="ZICCY,JASPER,LILY" delims="," var="name">
${name}
</c:forTokens>

4、EL表达式paramValues的用法

<a href="index.jsp?city=BJ&city=QD&city=SZ&province=SD&province=SH">城市</a>
<p>国家:${country}</p>
<c:forEach items="${paramValues}" var="entry">
   <c:forEach items="${entry.value}" var="value">
       ${value}
   </c:forEach>
</c:forEach>

说明:因为<a>标签里是一个类似Map的格式,即键值对的格式,所以要嵌套循环

5、EL中有11种隐式对象,常使用的有pageScope、requestScope、sessionScope、applicationScope、param、paramValues、initParam。


你可能感兴趣的:(JSTL学习笔记)