首先:主要使用范围是jsp
然后使用El表达式,要在page里面设置 isELIgnored="false"
使用JSTL需要导入不同的库
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>下面看代码的一些简单使用(主要是对核心库的使用)
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"
isELIgnored="false"%>
<!-- 引入标签库 -->
<!-- 引入标签库
taglib 引入一个标签
prefix 前缀
URI :标签引用的路径
引入核心的标签库
//核心类库 分为四大部分
out 输出
set 设置
控制语句 if for
url 路径
-->
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>JSTL+EL</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<h1>JSTL+EL</h1>
<br>
<jsp:useBean id="userinfo" class="bean.User" scope="page"></jsp:useBean>
<!-- 输出语句 -->
<c:out value="Hello World!"></c:out>
<br>
<c:out value="${12+9}"></c:out>
<br>
<!-- 设置语句
变量、Javabean
-->
<c:set var="name" value="尊"></c:set>
<c:out value="${name}"></c:out>
<!-- 给Javabean赋值 -->
<c:set target="${userinfo}" property="name" value="qqq"></c:set>
<br>
<c:out value="${userinfo.name}"></c:out>
<br>
<!-- 移除 -->
<c:set var="name1" value="尊qwe"></c:set>
<c:out value="${name1}"></c:out>
<c:remove var="name1" />
<p>-----移除------</p>
<c:out value="${name1}"></c:out>
<br>
<!-- 异常捕获 -->
<c:catch var="quest">
<!-- 产生的异常会保存在quest中 -->
</c:catch>
<!-- if 控制语句 -->
<c:set target="${userinfo}" property="age" value="21"></c:set>
<c:if test="${userinfo.age==21}" var="rs">
<br>
<p>
吠舞罗吾王!!!<br> ${rs}
</p>
<br>
</c:if>
<!-- 多分支 -->
<c:set value="90" var="score"></c:set>
<c:choose>
<c:when test="${score>=90}">
<p>武圣</p>
</c:when>
<c:when test="${score>=80}">
<p>傲世</p>
</c:when>
<c:when test="${score>=70}">
<p>超凡</p>
</c:when>
<c:otherwise>
<p>滚蛋!!!</p>
</c:otherwise>
</c:choose>
<br>
<!-- foreach遍历 for循环
items:集合对象 数组中
begin:开始位置
end:结束位置
step:自增的数
varStatus:当前变量的属性
-->
<%
String[] list = { "章泽天", "芙蓉妹妹", "wangerlang", "网北车", "天佑" };
//设置到rquest
request.setAttribute("list", list);
%>
<c:forEach var="tmp" items="${list}">
<c:out value="${tmp}"></c:out>
<br>
</c:forEach>
<ul>
<c:forEach var="tmp" items="${list}" begin="0" end="4" step="2">
<li>${tmp}</li>
</c:forEach>
</ul>
<dl>
<c:forEach var="tmp" items="${list}" varStatus="s">
<dt>${tmp}的属性</dt>
<dd>所在的索引位置 ${s.index}</dd>
<dd>总共迭代了次数是${s.count}</dd>
<dd>是否是第一个位置${s.first}</dd>
<dd>是否最后一个位置${s.last}</dd>
</c:forEach>
</dl>
<!-- forTokens 分割字符串 -->
<c:forTokens items="1-3-2-5-3-0" delims="-" var="token" >
<c:out value="${token}"></c:out>
<br>
</c:forTokens>
<!-- import倒入一个文件 可以说外部文件,也可以是一个外部文件的链接 -->
<c:import url="http://www.baidu.com"></c:import>
<!-- 重定向
url:最终定向的地址
-->
<!--
构建一个url
-->
<c:url value="http://www.baidu.com" var="url"></c:url>
<a href="${url}">百度一下</a>
<!-- 日期格式化 -->
<br>
<c:set var="now" value="<%=new Date()%>"></c:set>
<fmt:formatDate value="${now}" var="tt" />
<p>
<c:out value="${tt}"></c:out>
</p>
<fmt:formatDate value="${now}" type="date" var="tt" />
<p>
<c:out value="${tt}"></c:out>
</p>
<fmt:formatDate value="${now}" type="time" var="tt" />
<p>
<c:out value="${tt}"></c:out>
</p>
<fmt:formatDate value="${now}" type="both" var="tt" />
<p>
<c:out value="${tt}"></c:out>
</p>
<fmt:formatDate value="${now}" pattern="yyyy年MM月dd日 HH时mm分ss秒"
var="tt" />
<p>
<c:out value="${tt}"></c:out>
</p>
</body>
</html>