标准的JSTL
今天我们主要讲的是JSTL。不想说其他的了!看代码:每一句都有解释好好品味一下就什么都懂了。
<!-- c:out 显示 -->
<% request.setAttribute("user","lisi"); %>
<c:out value="${user}"default="dddd"></c:out> <!--如果前面的value为空那么default就显示出来-->
<c:out value="<h1>hellow</h1>" escapeXml="false"></c:out> <!--这个escapeXML就是对特殊的字符转译,如果改成false就不转移 -->
<c:out value="${user}">欢迎使用</c:out> <!--成对标签相当于default属性--> <!-- -->
<!--c:set给不用的作用域的变量赋值 -->
<br>-----------------------c:set----------------------------<br>
<c:set value="sunwukong" var="user"scope="request"/>${user} <!--如果scope省略那么就是page范围 -->
<c:set var="user"scope="request" >zhubajie</c:set>${user} <!--如果没有value那么标签体就是值 -->
<%
Map map=new HashMap();
request.setAttribute("map",map);
Person person=new Person();
request.setAttribute("person",person);
%>
<c:set property="aaa"value="tangseng" target="${map}"></c:set>${map.aaa}
<c:set target="${person}"property="name" value="jarry"></c:set> <!--给一个实体赋值 -->
<c:set target="${person}"property="id" value="123"></c:set>
${person.name}
${person.id}
<br>----------------------------------------c:remove-------------------------------------------<br>
<c:remove var="person"scope="request"/>
<c:out value="${person.name}"default="null"></c:out>
<br>---------------------------------------------c:catch----------------------------------------<br>
<c:catch var="myex"><%int i=10/0;%></c:catch>
异常:<c:out value="${myex}"></c:out><br>
异常原因:<c:out value="${myex.cause}"></c:out><br>
异常消息<c:out value="${myex.message}"></c:out><br>
异常堆栈轨迹:<c:out value="${myex.stackTrace}"></c:out>
<br>-----------------------c:if----------------------------<br>
<c:if test="${userName==null}"scope="request" var="xx">该用户没有登录</c:if><!-- 吧test的值放入var中 -->
${xx}
<br>-----------------------------c:choose c:whenc:otherwise------------------------------------<br>
<%request.setAttribute("age","5");
%>
<c:choose>
<c:when test="${age>70}">老年人</c:when>
<c:when test="${age>30}">中老年人</c:when>
<c:when test="${age>10}">年轻年人</c:when>
<c:when test="${age>0}">小孩</c:when>
<c:otherwise>不是人</c:otherwise>
</c:choose>
<br>---------------------------------c:foreach------------------------------------------<br>
<c:forEach begin="1"end="10" step="2">
hellow world!
</c:forEach>
<% List<String> list=new ArrayList<String>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("ddd");
list.add("eee");
list.add("fff");
list.add("ggg");
list.add("qqq");
list.add("www");
request.setAttribute("list",list);
%><table border="1" width="50%">
<tr><td> 元素的值</td><td>元素的下表</td><td>元素是第一个吗 </td><td>元素最后一个吗</td><td>元素显示的总个数</td></tr>
<c:forEach items="${list}"var="str" begin="0" step="1"varStatus="statue">
<tr class="${(statue.count)%2==0 ?'even' : 'odd'}"><td>${str}</td><td>${statue.index}</td><td>${statue.first}</td><td>${statue.last}</td><td>${statue.count }</td></tr>
</c:forEach>
</table>
<br>-----------------------------c:forTokens-----------------------------------<br>
<%String s="1.2.3.44+4.44.2.fds.fdsae.fda.fda.dd";
request.setAttribute("s",s);
%>
<c:forTokens items="${s}" delims="." var="ss">
${ss }
</c:forTokens>
<br>-----------------------------c:url-----------------------------------<br>
<%
session.setAttribute("xxxx","xxxxx");
%>
<c:url value="/index.jsp"var="strUrl" scope="request">
<c:param name="UserName"value="王五"></c:param>
</c:url>
${strUrl}
<a href="${strUrl}">首页</a>
<c:url value="/index.jsp"></c:url>
<a href="<c:url value='/index.jsp'/>">首页</a>
<br>-----------------------------c:import-----------------------------------<br>
<c:import url="MyHtml.html"></c:import>
<br>-----------------------------c:redirct-----------------------------------<br>
<c:redirect url="MyHtml.html"></c:redirect>