一、JSTL标签分类:

  1. 核心标签  
  2. 格式化标签
  3. SQL标签
  4. XML标签
  5. JSTL函数

二、核心标签       引用方式:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

1.<c:out>可使用“.”符号来访问属性。例如,要访问customer.address.street 只使用标签<c:out value="customer.address.street"/>。<c:out>具有三个属性,value,default(Fallback),escapeXML。

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>JSTL Study</title>
</head>
<body>
this is c:out
<br>
<c:out value="exciting"/>
</body>
</html>

2.<c:set>,具有以下属性:value,target,property,var,scope,<c:remove>具有(var,scope)属性

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<head>
<base href="<%=basePath%>">
<title>JSTL Study</title>
</head>
<body>
this is c:set
<br>
<c:set var="example" scope="session" value="${2000*2}"/><br>
<c:out value="${example}"/><br>
<c:remove var="example"/>
<p>After Remove</p>
<c:out value="${example}"/>
<c:out value="${message.id}"/><br>
<c:set target="${message}" property="id" value="123456"/>
<c:out value="${message.id}"/>&nbsp;&nbsp;<c:out value="${message.content }" />&nbsp;&nbsp;<c:out value="${message.description }" />&nbsp;&nbsp;<c:out value="${message.command }" />
</body>
</html>

3.<c:catch>捕获错误,<c:if>具有(test,var,scope)属性,test:条件计算,var:变量名称来存储条件的结果,scope:变量的范围来存储条件的结果

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<head>
<base href="<%=basePath%>">
<title>JSTL Study</title>
</head>
<body>
<c:catch var="catchException">
<%
int x = 5/0;
%>
</c:catch>
<c:if test = "${catchException != null}">
<p>The exception is : ${catchException} <br />
There is an exception: ${catchException.message}</p>
</c:if>
</body>
</html>

4.<c:choose>就像switch语句。switch有case,<c:choose>有<c:when>。switch有default,<c:choose>有<c:otherwise>

<c:choose>
<c:when test="${age <= 18}">
Kid
</c:when>
<c:when test="${age> 18}">
Not Kid
</c:when>
<c:otherwise>
Illegal
</c:otherwise>
</c:choose>

5.<c:import>导入功能,具有(url,context,charEncoding,var,scope,varReader)属性

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<head>
<base href="<%=basePath%>">
<title>JSTL Study</title>
</head>
<body>
<c:import var="data" url="http://www.baidu.com" />
<c:out value="${data}"/>
</body>
</html>

6.<c:forEach>遍历对象的集合。<c:forTokens>类似于split

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <html>
<head>
<base href="<%=basePath%>">
<title>JSTLStudy</title>
</head> <body>
ForEach and ForTokens<br>
<c:forEach items = "${MessageList}" var="mes">
<c:out value="${mes.command}"/>&nbsp;
</c:forEach>
<c:forTokens items="a,b,c" delims="," var="name">
<c:out value="${name}"/><p>
</c:forTokens>
</body>
</html>

7.<c:param>标签允许适当的URL请求参数并在URL中指定。<c:url>标记格式的URL转换为字符串,并将其存储到一个变量

<c:url value="/index.jsp" var="myURL">
<c:param name="trackingId" value="1234"/>
<c:param name="reportType" value="summary"/>
</c:url>
<c:import url="${myURL}"/>

8.<c:redirect>标签提供自动URL重写将浏览器重定向到另一个URL,它支持上下文相关的URL,并且它支持<c:param>标签。

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <html>
<head>
<base href="<%=basePath%>">
<title>JSTLStudy</title>
</head> <body>
<c:redirect url="http://www.baidu.com"/>
</body>
</html>

感谢http://www.yiibai.com/jsp/jsp_standard_tag_library.html

JSTL学习笔记(核心标签)的更多相关文章

  1. JavaWeb 后端 <六> 之 EL & JSTL 学习笔记

    一.EL表达式(特别重要)

  2. JavaEE EL & JSTL 学习笔记

    1. EL表达式(特别重要)

  3. 学习笔记_Java_day13_JSTL标签库(1、2、3、4、5、6、7、8)

    1.一种标签语言 day13 l  JSTL标签库(重点) l  自定义标签(理解) l  MVC设计模式(重点中的重点) l  Java三层框架(重点中的重点) JSTL标签库 1 什么是JSTL ...

  4. day11_jsp/EL/JSTL学习笔记

    一.jsp概述 JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP实际上就是Servlet. JSP这门技术的最大 ...

  5. JSP标准标签库(JSTL)之核心标签(下)

      前面记录了核心标签的前几种,现在来接着记录. 七.<c:import>标签 使用<c:import>标签可以包含一个FTP服务器中不同的网页内容.语法格式: <c:i ...

  6. JSP标准标签库(JSTL)之核心标签(上)

    在myeclipse中新建web项目时,会自动为我们安装JSTL库,如下图: 核心标签是我们最常用的JSTL标签.在JSP页面中引用核心标签库的语法如下: <%@ taglib uri=&quo ...

  7. JSTL学习笔记

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6684442.html  一:JSTL用途 JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用 ...

  8. HTML学习笔记之标签基础

    目录 1.基本标签 2.链接 3.图像 4.表格 5.列表 6.块与布局 1.基本标签 (1)标题与段落 标签 <h1> ~ <h6> 分别用于定义一至六级标题,标签 < ...

  9. HTML学习笔记之标签进阶

    目录 1.框架 2.表单 3.音频 4.视频 5.文档类型 6.头部元素 7.样式 8.脚本 9.实体 1.框架 使用框架允许我们在同一个浏览器窗口中显示多个页面,其中每份 HTML 文档称为一个框架 ...

随机推荐

  1. [转载]aptitude与apt-get的区别和联系

    转自 http://www.cnblogs.com/yuxc/archive/2012/08/02/2620003.html 命令 下面将要介绍的所有命令都需要sudo!使用时请将“packagena ...

  2. Linq to Entities不识别方法

    db.UserValidates.Include(a => a.User).Where(uv => u.UserValidates.Contains(uv, c)).ToList(); 执 ...

  3. windows程序消息机制(Winform界面更新有关)--转

    1. Windows程序消息机制 Windows GUI程序是基于消息机制的,有个主线程维护着消息泵.这个消息泵让windows程序生生不息. Windows程序有个消息队列,窗体上的所有消息是这个队 ...

  4. mysql to sql sersver

    USE SCK_PARA GO /****** Object:  StoredProcedure [dbo].[syncdata_mysql2sqlserver]    Script Date: 08 ...

  5. No1_8.类和对象2_Java学习笔记_对象

    对象 /**** * *一.对象 *1.概念:对象是由类抽象出来的,对象可以操作类的属性和方法解决问题,了解对象的创建.操作和消亡很必要: *2.对象的创建: * a. new操作符创建:每实例化一个 ...

  6. Linux上安装JDK

    1.下载rpm文件并安装 rpm -ivh jdk-7u51-linux-x64.rpm 2.修改/etc/profile文件,增加以下配置 export JAVA_HOME=/usr/java/jd ...

  7. MySQL错误Another MySQL daemon already running with the same unix socket

    今天遇到RT这个问题后,导致数据库错误,然后在国外网站发现了一个解决方法,记录如下: 原因是:多个Mysql进程使用了同一个socket. 解决方法是:直接把mysql.sock文件改名即可.也可以删 ...

  8. Kendo Web UI Grid里时间格式转换

    我和大家分享一下我的kendo的学习心得.如果不好的地方多多包含或者给我留言请看图 kendo里时间格式如图Oder Date列里的格式.但是我们想把时间转换成中国人习惯的格式.如Shipped Da ...

  9. 最大公约数(gcd):Euclid算法证明

    1个常识: 如果 a≥b 并且 b≤a,那么 a=b. 2个前提: 1)只在非负整数范围内讨论两个数 m 和 n 的最大公约数,即 m, n ∈ N. 2)0可以被任何数整除,但是0不能整除任何数,即 ...

  10. hdu 5305Friends

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5305 Problem Description There are n people and m pai ...