標籤:har The log 條件 lan -- el運算式 meta java
1 <%@page import="cn.woo.entity.Person"%> 2 <%@page import="java.util.List"%> 3 <%@page import="java.util.ArrayList"%> 4 <%@ page language="java" contentType="text/html; charset=UTF-8" 5 pageEncoding="UTF-8"%> 6 <!-- 7 使用@taglib 指令引入標籤庫 8 uri:為標籤庫的地址【此處使用的是jsp的標準標籤庫,裡面標籤還有很多此處不一一示範】 9 prefix:自訂的標籤首碼,使用的時候需要寫該首碼 10 --> 11 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 12 13 <!-- 14 ======================================================================================== 15 其他jstl有關的標籤庫和函數庫,可自行查詢每個庫中標籤的使用方式【也可以藉助Eclipse中的提示功能查看各個庫中的標籤以及標籤的屬性】 16 ======================================================================================== 17 --> 18 <!-- jstl的fmt格式化標籤庫 --> 19 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> 20 <!-- jstl的fn方法庫:包含了向字串截取等方法 --> 21 <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 22 <!-- jstl關於sql方面的標籤庫:包含了操作sql的標籤--> 23 <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> 24 <!-- jstl關於xml方面的標籤庫:包含了操作xml的標籤--> 25 <%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="xml"%> 26 27 <!-- ======================================================================================= --> 28 <% 29 // 建立Person集合 30 List<Person> persons = new ArrayList<Person>(); 31 Person p1 = new Person("23","wpp"); 32 Person p2 = new Person("24","waa"); 33 persons.add(p1); 34 persons.add(p2); 35 // 要將資料放置在域中才能使用EL運算式擷取展示,之前使用<jsp:use>行為建立的對象預設存放在page域對象中 36 request.setAttribute("personList", persons); 37 38 //後面示範set標籤操作對象的時候使用 39 pageContext.setAttribute("p1", p1); 40 %> 41 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 42 <html> 43 <head> 44 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 45 <title>示範JSTL常用標籤的使用</title> 46 </head> 47 <body> 48 <!-- out輸出標籤 49 default:[${ param.action }沒有擷取到數值的時候顯示預設值] 50 escapeXml:對一些特殊字元進行編碼如:‘>‘ ‘<‘ ‘&‘ 51 --> 52 <c:out value="${ param.action }" default="沒有action參數" escapeXml="true"></c:out> 53 <c:out value="${ ‘<>‘ }" default="預設數值" escapeXml="true"></c:out> 54 55 <!-- if標籤 56 條件寫在test屬性中,字串的比較直接使用==進行比較 57 --> 58 <c:if test="${ param.action == ‘login‘ }"> 59 <div>登陸面板</div> 60 </c:if> 61 <c:if test="${ param.action == homepage}"> 62 <div>首頁面</div> 63 </c:if> 64 65 <!-- 利用choose、when、otherwise 標籤實現if else功能--> 66 <c:choose> 67 <c:when test="${ param.action == ‘login‘}"> 68 <div>登陸面板</div> 69 </c:when> 70 <c:otherwise> 71 <div>非登陸面板</div> 72 </c:otherwise> 73 </c:choose> 74 75 <!-- 利用forEach標籤 輸出1~100之間的所有偶數 76 begin:起始位置 77 end:結束位置 78 step:遍曆過程中每一次跳過的步數 79 var:設定當前遍曆項的名稱 80 items:被遍曆的集合資料 如:${persons} ===>人員資訊集合 81 varStatus:儲存當前被遍曆對象的資訊【如:當前被遍曆元素的索引等】 82 --> 83 <%-- <c:forEach begin="2" end="100" step="2" var="number" varStatus=""> 84 <p>${ number }</p> 85 </c:forEach> --%> 86 <!-- 遍曆Persons集合 --> 87 <c:forEach items="${ personList }" var="person" varStatus="objStatus"> 88 <p>名稱:${ person.name } 序號:${ objStatus.index }</p> 89 </c:forEach> 90 91 <!-- forTokens標籤 92 和forEach標籤的使用方式一樣,都有items var varStatus begin end step 等屬性 93 不同的是forEach標籤的items中放置的是集合或者對象,而forTokens標籤的items屬性中放置的是字串 94 它會將該字串按照delims的值進行分割展示 95 --> 96 <c:forTokens items="aaa,bbb,ccc,ddd,eee" delims="," var="str"> 97 <p>數值:${ str }</p> 98 </c:forTokens> 99 100 <!-- set標籤101 可以建立/修改 變數或者對象中的屬性【前提條件是對象的屬性擁有set方法】102 scope:操作的變數放置的域/新建立的變數要放置的域 【page、request、session、application】103 value:要設定的數值104 var:【只能操作:Integer\Double\Float\String】類型不能操作javaBean和Map105 property:被操作的對象的屬性名稱/或者map中的一個key 106 target:對象名稱/或者map集合名稱 【property和target常用來操作javaBean和Map============>只能用來操作已經存在的對象,不能建立對象】107 -->108 <!-- set建立變數,存放網站總訪問次數,和當前用戶端的訪問次數 -->109 <c:set scope="application" value="${ totalCount+1 }" var="totalCount"> </c:set>110 <c:set scope="session" value="${ count+1 }" var="count"></c:set>111 本站總訪問人數:${ totalCount }<br>112 您的訪問次數為:${ count }<br>113 <!-- set操作javaBean -->114 <c:set value="更改後的名稱" target="${ p1 }" property="name"></c:set>115 <c:out value="${ p1.name }"></c:out>116 </body>117 </html>
JSTL標籤庫的使用