为了保EL表达式正常使用,需要在<%@page 标签里加上isELignored="false"
例子:‘${name}‘
EL表达式可以从pageContext,request,session,application四个作用域中取到值
优先级顺序:pageContext>request>session>application
JavaBean
1.提供无参public构造方法(默认构造)
2.每个属性,都有public 的 setter 和getter
3.如果属性是boolean,那么就对应is和setter方法
<%
Hero hero =new Hero();
hero.setName("盖伦");
hero.setHp(616);
request.setAttribute("hero", hero);
%>
英雄名字 : ${hero.name} <br>
英雄血量 : ${hero.hp}
http://127.0.0.1/jstl.jsp?name=abc
${param.name}
${killNumber ge 10?"超神":"还没超神"}
例子中讲的是大于等于,除此之外的其他用法如下:
eq相等 ne、neq不相等,
gt大于, lt小于
gt大于, lt小于
gte、ge大于等于
lte、le 小于等于
not非 mod求模
is [not] div by是否能被某数整除
is [not] even是否为偶数
is [not] odd是否为奇
需要导入jstl.jar 和 standard.jarw
使用core前需要通过指令设置
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:set var="name" value="${'gareen'}" scope="request"/>
设置request中的name属性为gareen
<c:out value="${name}"/>
打印name属性
<c:remove var="name" scope="request">
删除name属性
作用域是pageContext,request,session,application
<c:set var="hp" value="${10}" scope="request" />
<c:if test="${hp<5}">
<p>这个英雄要挂了</p>
</c:if>
<c:if test="${!(hp<5)}">
<p>这个英雄觉得自己还可以再抢救抢救</p>
</c:if>
<%
pageContext.setAttribute("weapon", null);
pageContext.setAttribute("lastwords", "");
pageContext.setAttribute("items", new ArrayList());
%>
<c:if test="${empty weapon}">
<p>没有装备武器</p>
</c:if>
<c:if test="${empty lastwords}">
<p>挂了也没有遗言</p>
</c:if>
<c:if test="${empty items}">
<p>物品栏为空</p>
</c:if>
<c:forEach items="${heros}" var="hero" varStatus="st" >
items="${heros}" 表示遍历的集合
var="hero" 表示把每一个集合中的元素放在hero上
varStatus="st" 表示遍历的状态
<!-- 使用JSTL中的c:forEach 循环来遍历List -->
<table width="200px" align="center" border="1" cellspacing="0">
<tr>
<td>编号</td>
<td>英雄</td>
</tr>
<c:forEach items="${heros}" var="hero" varStatus="st" >
<tr>
<td><c:out value="${st.count}" /></td>
<td><c:out value="${hero}" /></td>
</tr>
</c:forEach>
</table>
使用fmt之前要加上标签
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix='fmt' %>
<fmt:formatNumber type="number" value="${money}" minFractionDigits="2"/>
<fmt:formatNumber 表示格式化数字
minFractionDigits 小数点至少要有的位数
maxFractionDigits 小数点最多能有的位数
<fmt:formatDate value="${now}" pattern="G yyyy年MM月dd日 E"/>
<fmt:formatDate value="${now}" pattern="a HH:mm:ss.S z"/>
<fmt:formatDate value="${now}" pattern="yyyy-MM-dd HH:mm:ss"/>
<fmt:formatDate 表示格式化日期
yyyy 表示年份
MM 表示月份
dd 表示日期
E 表示星期几
a 表示是上午还是下午
HH 表示小时
mm 表示分钟
ss 表示秒
S 表示毫秒
z 表示时区
转自 file:///E:/how2j_offline_2019.01.01/k/jsp/jsp-jstl/578.html#nowhere
原文:https://www.cnblogs.com/zhuob/p/12289476.html