JSP 标准标签库(JSTL)
  JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
  JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。
  根据JSTL标签所提供的功能,可以将其分为5个类别。
    核心标签,格式化标签,SQL 标签,XML 标签,JSTL 函数

jstl安装配置:
  从Apache的标准标签库中下载的二进包(jakarta-taglibs-standard-current.zip),解压后jstl.jar,standard.jar把加入到配置环境中

核心标签
  核心标签是最常用的JSTL标签。引用核心标签库的语法如下:
  <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

举例测试:
UserServlet.java

package com.blueocean.jstl.servlet;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class UserServlet extends HttpServlet { @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = "jstl-Name";
request.setAttribute("name", name); List<String> stringList = new ArrayList<String>();
stringList.add("String001");
stringList.add("String002");
stringList.add("String003");
stringList.add("String004");
stringList.add("String005");
request.setAttribute("stringList", stringList); Map<String, String> stringMap = new HashMap<String, String>();
stringMap.put("k1", "v1");
stringMap.put("k2", "v2");
stringMap.put("k3", "v3");
stringMap.put("k4", "v4");
stringMap.put("k5", "v5");
request.setAttribute("stringMap", stringMap); request.getRequestDispatcher("/jstl.jsp").forward(request, response);
} @Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } }

jstl.jsp

<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<%@ taglib prefix="c"
uri="http://java.sun.com/jstl/core_rt" %>
<!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=ISO-8859-1">
<title>jstl测试</title>
</head>
<body>
<div>
<div>
<div>EL测试</div>
<div>
${name }
</div>
<div><c:out value="${name }"></c:out></div>
</div>
<div>
<div>测试c:set c:remove c:out</div>
<div>测试c:set--<c:set var="cName" value="jstlcName" /></div>
<div>测试c:out--<c:out value="${cName }" /></div>
<div>测试c:remove--<c:remove var="cName"/></div>
<div>测试c:out--<c:out value="${cName }" /></div>
</div>
<hr>
<div>
<div>测试List取值,c:forEach,c:if,c:out</div>
<div>
<c:forEach var="str" items="${stringList }">
<c:if test="${str != null}" var="res">
<div>str:<c:out value="${str }" />:<c:out value="${res }" /></div>
</c:if>
</c:forEach>
</div>
</div>
<hr>
<div>
<div>测试c:choose,c:when,c:otherwires</div>
<div>
<c:set var="num" value="100"/>
<c:choose>
<c:when test="${num >= 10 }" >大于等于10</c:when>
<c:otherwise>小于10</c:otherwise>
</c:choose>
</div>
</div>
<hr>
<div>
<div>测试Map取值</div>
<div>
<c:forEach var="str" items="${stringMap }">
<c:out value="${str.key }"></c:out> :
<c:out value="${str.value }"></c:out><br>
</c:forEach>
</div>
</div>
<hr>
</div>
</body>
</html>

运行结果

最新文章

  1. Android 自动补全提示输入AutoCompleteTextView、 MultiAutoCompleteTextView
  2. 微信js SDK接口
  3. 注意Activator.CreateInstance两个重载方法的性能
  4. 伸展树(二)之 C++的实现
  5. ASP.NET MVC 使用 IOC框架 AutoFac 自动释放数据库资源
  6. 64位环境中使用SQL查询excel的方式解决
  7. RESTful架构
  8. [AngularJS] Html ngSanitize, $sce
  9. Git之detached HEAD
  10. python操作Mysql基础
  11. HTML5 Audio/Video 标签,属性,方法,事件汇总 (转)
  12. FastDFS单机版安装
  13. iOS字典转字符串方法
  14. 老男孩python学习自修第十五天【常用模块之time】
  15. 基于Enterprise Architect完成数据库建模
  16. 浅谈Nginx负载均衡与F5的区别
  17. C#语言正则用法
  18. IntelliJ IDEA2018激活方法
  19. php连接oracle数据库
  20. Hive配置文件中配置项的含义详解(收藏版)

热门文章

  1. jQuery下锚点的平滑跳转
  2. linux系统终端介绍
  3. 卷积神经网络---padding、 pool、 Activation layer
  4. \_\_getattribute\_\_
  5. UML-业务规则
  6. 9.数据分组 group by
  7. C# 元组
  8. sql 新增随机数
  9. Jarque-Bera test|pp图|K-S检验|
  10. Java接口和抽象类区别