https://www.ibm.com/developerworks/cn/java/j-jstl0211/ JSTL入门:表达式语言
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.6.4.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>查询商品列表</title>
</head>
<body>
<script type="text/javascript">
</script>
<div>
<!-- 赋值 -->
<c:set var="name" value="zhang" scope="request">
</c:set>
------------------分隔符----------------------------------<br/>
<!-- EL三元运算 -->
${empty(requestScope.name) ? 'name is null':requestScope.name }<br/>
${not empty(requestScope.name) ? 'name is null':requestScope.name }<br/>
------------------分隔符----------------------------------<br/>
<!-- JSTL输出控制 这儿给不存在的name2,输出默认-->
<c:out value="${requestScope.name2}" default="name is null"></c:out> <br />
------------------分隔符----------------------------------<br/>
<!-- JSTL if语句 -->
<c:if test="${user.name=='塔睿' }">
${user.name }<br/>
</c:if>
<c:if test="${empty requestScope.name}" var="aa" scope="page">
not null <br />
</c:if>
<c:if test="${!aa}">
is null <br />
</c:if>
------------------分隔符----------------------------------<br/>
<!-- JSTL删除元素 -->
<c:remove var="name" scope="request"></c:remove>
------------------分隔符----------------------------------<br/>
<!-- JSTL多重分支语句 -->
<h5>获取到controller中的age值:${user.age }</h5>
------------------分隔符----------------------------------<br/>
<!-- *注意*判断条件写在{}里面,不是外面,没有提示,不能拼错字母 -->
<c:choose>
<c:when test="${user.age<18 }">
Little Child<br/>
</c:when>
<c:when test="${user.age>=100 }">
Old Man<br/>
</c:when>
<c:when test="${user.age<=20 } && ${user.age>=1 }">
Cool<br/>
</c:when>
<c:otherwise>
其他情况<br/>
</c:otherwise>
</c:choose>
------------------分隔符--------------------------------<br/>
<!-- JSTL多重分支判断字符串 -->
<c:choose>
<c:when test="${user.name == '塔睿'}">
塔睿<br/>
</c:when>
<c:when test="${user.address eq '里约'}">
里约<br/>
</c:when>
<c:otherwise>
默认情况<br/>
</c:otherwise>
</c:choose>
------------------分隔符--------------------------------<br/>
<%-- 如果是 List<List<String>>list嵌套的情况,考虑嵌套foreach输出
<c:foreach item="${list}" var="ls">
<c:foreach item="${ls}" var="l">
${l}
</c:foreach>
</c:foreach> --%>
<!-- C:foreach遍历循环 -->
<!-- -->
<span> 输出list集合测试:${list.get(1) }</span><br/>
<c:forEach var="item" items="${list }" begin="0" end="1">
${item }
</c:forEach>
<div class="wd_yc_bt ${type==0?'on':'' }" id="wjj">未解决</div>
<div class="wd_yc_bt ${type==1?'on':'' }" id="yjj" >已解决</div>
<div class="wd_yc_bt ${type==2?'on':'' }" id="xsjf">悬赏</div>
<div class="wd_yc_bt wd_bt_color ${type==3?'on':'' }" id="rm">热门</div>
</div>
</body>
</html>
2. EL 擅长寻找对象及其特性,然后对它们执行简单操作;它不是编程语言,甚至不是脚本编制语言。但是,与 JSTL 标记一起使用时,它就能使用简单而又方便的符号来表示复杂的行为。EL 表达式的格式是这样的:用美元符号($)定界,内容包括在花括号({})中