第08章JSP核心表達(dá)式與標(biāo)簽_第1頁
第08章JSP核心表達(dá)式與標(biāo)簽_第2頁
第08章JSP核心表達(dá)式與標(biāo)簽_第3頁
第08章JSP核心表達(dá)式與標(biāo)簽_第4頁
第08章JSP核心表達(dá)式與標(biāo)簽_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、電子信息系*第1頁第8章 JSP核心表達(dá)式與標(biāo)簽 8.1 JSP表達(dá)式 8.2 JSTL標(biāo)準(zhǔn)標(biāo)簽庫 8.3 JSTL核心標(biāo)簽 8.4 JSTL的XML標(biāo)簽 8.5 JSTL的格式化標(biāo)簽 8.6 其它JSTL標(biāo)簽 8.7 自定義標(biāo)簽實(shí)現(xiàn) 電子信息系*第2頁8.1 JSP表達(dá)式 8.1.1 JSP表達(dá)式簡(jiǎn)介 8.1.2 JSP表達(dá)式使用 8.1.3 訪問作用域變量 8.1.4 JSP表達(dá)式隱藏對(duì)象 電子信息系*第3頁 表達(dá)式語言(EL)是JSP2.0版本之后引入的新功能,該語言是一種簡(jiǎn)單,容易使用的語言并且可以使用標(biāo)簽快速的訪問JSP的隱含對(duì)象和JavaBean組件。 表達(dá)式語言雖然是一種簡(jiǎn)單的語

2、言,但它可以非常方便的操作各種算術(shù)、關(guān)系、邏輯或空值測(cè)試運(yùn)算符,從而提高運(yùn)算效率。 JSP表達(dá)式簡(jiǎn)介 電子信息系*第4頁調(diào)用El表達(dá)式的一般格式如下: JSP表達(dá)式使用 (1)$expression expression代表一個(gè)合法的EL表達(dá)式。 注意:$和不要漏寫,它是組成EL表達(dá)式不可缺少的一部分。 運(yùn)行結(jié)果如圖所示: 6-2=$6-2 4*6=$4*6 例如:電子信息系*第5頁JSP表達(dá)式使用 (2)在JSP標(biāo)準(zhǔn)動(dòng)作元素中使用EL表達(dá)式的方法并不是唯一的 。 (1)標(biāo)準(zhǔn)動(dòng)作元素的屬性中只包含一個(gè)表達(dá)式時(shí),該表達(dá)式結(jié)果將會(huì)自動(dòng)轉(zhuǎn)換成屬性所對(duì)應(yīng)的數(shù)據(jù)類型,其語法格式如下: (2)標(biāo)準(zhǔn)動(dòng)作元素

3、的屬性中包含多個(gè)表達(dá)式時(shí),按照規(guī)則從左到右計(jì)算表達(dá)式的結(jié)果,然后該表達(dá)式結(jié)果將自動(dòng)轉(zhuǎn)換成屬性所對(duì)應(yīng)的數(shù)據(jù)類型。其語法格式如下: 電子信息系*第6頁JSP表達(dá)式使用 (3) (3)標(biāo)準(zhǔn)動(dòng)作元素的屬性中包含一個(gè)或多個(gè)表達(dá)式并且該表達(dá)式與文本相結(jié)合時(shí),按照規(guī)則,從左到右,并且將文本和表達(dá)式相連接,從而計(jì)算出以字符串形式輸出的表達(dá)式結(jié)果,然后該字符串將自動(dòng)轉(zhuǎn)換成屬性所對(duì)應(yīng)的數(shù)據(jù)類型。其語法格式如下: (4)根據(jù)實(shí)際的需要,標(biāo)準(zhǔn)動(dòng)作元素的屬性中有時(shí)只包含文本,此時(shí),該文本可以當(dāng)成EL表達(dá)式的字符串常量來處理。因此,可以把字符串常量作為表達(dá)式結(jié)果自動(dòng)轉(zhuǎn)換成屬性所對(duì)應(yīng)的數(shù)據(jù)類型。其語法格式如下: 注意:JS

4、P2.0版本之后才引入EL表達(dá)式。因此,應(yīng)用服務(wù)器的使用環(huán)境也要有所提高,在一般情況下建議使用Tomcat5.5或者是Tomcat6.0版本。 電子信息系*第7頁訪問作用域變量 (1)使用EL表達(dá)式訪問作用域變量的一般格式如下: $attrname 該語句將按照“page”“request”“session”“application”的順序查找并輸出該屬性所對(duì)應(yīng)的數(shù)據(jù)。 例如,在不同的作用域范圍內(nèi)設(shè)置變量: request.setAttribute(sx1, 長(zhǎng)春);/request作用域HttpSession session=request.getSession();session.setA

5、ttribute(sx2, 吉林省); /session作用域ServletContext application=getServletContext();application.setAttribute(time, new java.util.Date(); 創(chuàng)建JSP頁面文件,該頁面文件獲取到不同作用域的數(shù)據(jù),該頁面的關(guān)鍵代碼如下: 電子信息系*第8頁訪問作用域變量 (2) requestScope作用域 $sx1 sessionScope作用域 $sx2 applicationScope作用域 $time 程序運(yùn)行結(jié)果如圖所示。 電子信息系*第9頁JSP表達(dá)式隱藏對(duì)象 (1)JSP表達(dá)式

6、的隱藏對(duì)象按其訪問環(huán)境的不同可分為3大類: (1)通過pageContext對(duì)象訪問JSP其它的8個(gè)內(nèi)置隱藏對(duì)象如表所示。 隱藏對(duì)象類型含義pageContextjavax.servletContext使用pageContext訪問其它內(nèi)置隱藏對(duì)象,例如,request、session、out、config等(2)用于訪問環(huán)境信息的對(duì)象如表所示。 隱藏對(duì)象類型含義cookieJava.util.Map把單個(gè)的cookie對(duì)象映射到cookie名當(dāng)中initParamJava.util.Map把單個(gè)值映射到上下文初始化參數(shù)的名稱當(dāng)中headerJava.util.Map映射請(qǐng)求頭名到單個(gè)字符串?dāng)?shù)

7、組paramJava.util.Map把單個(gè)字符串參數(shù)值映射到請(qǐng)求參數(shù)名當(dāng)中headerValuesJava.util.Map把字符串?dāng)?shù)組映射到請(qǐng)求頭名稱當(dāng)中paramValuesJava.util.Map把字符串?dāng)?shù)組映射到請(qǐng)求參數(shù)名當(dāng)中電子信息系*第10頁JSP表達(dá)式隱藏對(duì)象 (2)(3)訪問作用域范圍的隱藏對(duì)象如表8-3所示。 隱藏對(duì)象類型作用applicationScopeJava.util.Map整個(gè)應(yīng)用程序范圍內(nèi)有效sessionScopeJava.util.Map會(huì)話范圍內(nèi)有效requestScopeJava.util.Map請(qǐng)求的范圍內(nèi)有效pageScopeJava.util.M

8、ap整個(gè)頁面范圍內(nèi)有效例如,首先創(chuàng)建一個(gè)JSP頁面,該頁面主要包括提交信息的form表單 : 電子信息系*第11頁JSP表達(dá)式隱藏對(duì)象 (3) 再創(chuàng)建一個(gè)頁面,該頁面將通過EL表達(dá)式的內(nèi)置對(duì)象獲取頁面請(qǐng)求參數(shù)、上下文初始化參數(shù)及Web服務(wù)器相關(guān)信息: 訪問隱藏對(duì)象 頁面請(qǐng)求參數(shù): $param. information 上下文初始化參數(shù): $pageContext.request.contextPath Web服務(wù)器相關(guān)信息: $pageContext.servletContext.serverInfo 執(zhí)行程序:輸入“sanyang”點(diǎn)擊“提交”按鈕電子信息系*第12頁8.2 JSTL標(biāo)準(zhǔn)標(biāo)

9、簽庫 8.2.1 JSTL標(biāo)簽簡(jiǎn)介 8.2.2 JSTL獲取 8.2.3 JSTL安裝與配置 電子信息系*第13頁JSTL標(biāo)簽簡(jiǎn)介 JSP標(biāo)準(zhǔn)標(biāo)簽庫(JSP Standard Tag Library)簡(jiǎn)稱JSTL。它實(shí)現(xiàn)Web應(yīng)用程序的常用功能并定制的標(biāo)記庫集,該功能包括基本輸入輸出、流程控制、XML文件、數(shù)據(jù)庫查詢、國際化和文字格式化的應(yīng)用等。該標(biāo)簽是SUN公司定義的規(guī)范并經(jīng)過許多公司共同開發(fā)與完善的一種開放源代碼的標(biāo)準(zhǔn)標(biāo)簽庫。JSTL標(biāo)準(zhǔn)標(biāo)簽庫在很大程度上提高了代碼的復(fù)用性,同時(shí)也節(jié)省了程序員編寫代碼的時(shí)間。JSTL標(biāo)準(zhǔn)標(biāo)簽庫有很多種,下面將列舉幾種重用度很高的標(biāo)準(zhǔn)標(biāo)簽庫,如表所示。 標(biāo)簽

10、名說明前綴CoreCore是核心標(biāo)簽庫,提供了用來生成及操作URL的標(biāo)簽cXML提供了用來操作以XML表示的數(shù)據(jù)標(biāo)簽xInternationalization(國際化)簡(jiǎn)稱ii18n,定義了格式化數(shù)據(jù) 的操作標(biāo)簽fmtFunction主要用于處理字符串fnSQL數(shù)據(jù)庫查詢關(guān)系型數(shù)據(jù)庫操作的標(biāo)簽sql更多JSTL標(biāo)準(zhǔn)標(biāo)簽庫的信息請(qǐng)登錄:/taglibs/index.html 電子信息系*第14頁JSTL獲取 如果要想使用JSTL標(biāo)準(zhǔn)標(biāo)簽庫,首先必須通過網(wǎng)址或者其它途徑進(jìn)行獲取,讀者可登錄“/dist/jaka

11、rta/taglibs/standard/binaries”下載JSTL。版本為jakarta-taglibs-standard-1.1.2,如圖所示。 此外,讀者還可以通過MyEclipse的IDE引入JSTL。 電子信息系*第15頁JSTL安裝與配置 (1)下載JSTL并將jakarta-taglibs-standard-current.zip解壓縮,然后把lib目錄下的兩個(gè)文件jstl.jar和standard.jar復(fù)制到/WEB-INF/lib/目錄下(例如:D:Tomcat6.0webapps項(xiàng)目名稱WEB-INFlib),然后重新啟動(dòng)Tomcat。 (2)測(cè)試JSTL。通過下面的

12、頁面來測(cè)試JSTL是否配置成功,如果成功將顯示如圖所示的界面,否則將重新配置JSTL,頁面代碼如下: 測(cè)試JSTL是否配置成功 /為輸出標(biāo)簽恭喜您,配置成功! 電子信息系*第16頁8.3 JSTL核心標(biāo)簽 8.3.1 輸出結(jié)果標(biāo)簽 8.3.2 對(duì)象屬性設(shè)置標(biāo)簽 8.3.3 對(duì)象值刪除設(shè)置標(biāo)簽 8.3.4 捕捉異常標(biāo)簽 8.3.5 if條件判斷標(biāo)簽 8.3.6 choose條件判斷標(biāo)簽 8.3.8 其它條件分支標(biāo)簽 8.3.9 迭代標(biāo)簽 8.3.10 導(dǎo)入U(xiǎn)RL資源標(biāo)簽 8.3.11 構(gòu)造URL標(biāo)簽 8.3.12 重定向URL標(biāo)簽 8.3.13 URL參數(shù)傳遞標(biāo)簽 8.3.7 條件分支標(biāo)簽 電子

13、信息系*第17頁輸出結(jié)果標(biāo)簽 是用來輸出數(shù)據(jù)或表達(dá)式的結(jié)果到JspWriter對(duì)象中,(out是JspWriter的實(shí)例)。該標(biāo)簽有兩種語法格式,具體如下: (1)不包含body內(nèi)容的情況。 (2)包含body內(nèi)容的情況。 default 標(biāo)簽的屬性如表所示。 屬性名稱類型說明valueObject表示在JSP頁面顯示的值。escapeXMLboolean表示是否轉(zhuǎn)換特殊字符,默認(rèn)值為truedefaultObjectDefault是默認(rèn)值,如果value為null,則顯示default的值電子信息系*第18頁對(duì)象屬性設(shè)置標(biāo)簽(1) 標(biāo)簽主要用于在一個(gè)范圍中(request、session)設(shè)

14、置某個(gè)值或者設(shè)置某個(gè)對(duì)象的屬性,該標(biāo)簽有以下4種形式。 (1)使用value屬性的值設(shè)定某個(gè)范圍內(nèi)變量的值,語法格式如下:(2)使用body內(nèi)容設(shè)定某個(gè)范圍內(nèi)變量的值,語法格式如下: /body 內(nèi)容 (3)使用value屬性的值設(shè)定某個(gè)對(duì)象的屬性值,語法格式如下:(4)使用body內(nèi)容設(shè)定某個(gè)對(duì)象的屬性值,語法格式如下: /body 內(nèi)容 電子信息系*第19頁對(duì)象屬性設(shè)置標(biāo)簽(2) 標(biāo)簽中的屬性如表所示。 屬性名稱類型說明valueObject將要設(shè)定的變量或?qū)ο蟮膶傩灾祐arStrng將要設(shè)定的變量名scopeStringVar的有效范圍,其默認(rèn)值為page targetObject表示一

15、個(gè)javabean或java.util.Map對(duì)象propertyString表示指定target對(duì)象的屬性名注意:1target對(duì)象必須為javabean或java.util.Map中的對(duì)象。2value的值既可以是常量又可以是EL表達(dá)式。3target和property屬性必須同時(shí)出現(xiàn)。 電子信息系*第20頁對(duì)象值刪除設(shè)置標(biāo)簽 標(biāo)簽的主要用途是用于刪除某個(gè)變量或者屬性。該標(biāo)簽的語法格式如下: var:表示將要?jiǎng)h除的參數(shù)名,類型為String。 scope:表示var的有效范圍,類型為String。 標(biāo)簽的屬性描述如下:注意:如果沒有指定var的范圍scope時(shí),那么將會(huì)執(zhí)行pageCont

16、ext.removeAttribute(var)的操作。 電子信息系*第21頁捕捉異常標(biāo)簽 為捕捉異常標(biāo)簽,該標(biāo)簽主要用于處理產(chǎn)生錯(cuò)誤的異常情況,并且將錯(cuò)誤信息進(jìn)行存儲(chǔ),該標(biāo)簽語法格式如下: /省略 var:用于標(biāo)記異常的名字,類型為String,該屬性的作用域必須是page。 注意:標(biāo)簽捕獲的異常都應(yīng)該屬于java.lang.Throwable類型并且var類型與捕獲到的異常類型要相同。 電子信息系*第22頁if條件判斷標(biāo)簽 是條件判斷標(biāo)簽,是流程控制標(biāo)簽之一。該標(biāo)簽主要用于進(jìn)行條件判斷并且只有當(dāng)條件成立時(shí)才會(huì)處理body內(nèi)容。其具體的語法格式有如下兩種: (1)不包含body內(nèi)容。 (2)

17、包含body內(nèi)容。 body 內(nèi)容 標(biāo)簽的相關(guān)屬性如表所示 屬性名稱類型說明testBoolean取值為true或false,當(dāng)結(jié)果為true時(shí)執(zhí)行body內(nèi)容varStrng記錄判斷條件返回結(jié)果的范圍變量名scopeString表示var的范圍,缺省值為page電子信息系*第23頁choose條件判斷標(biāo)簽 標(biāo)簽是流程控制標(biāo)簽之一,其主要用于條件選擇,作為與的父標(biāo)簽,該標(biāo)簽不含任何屬性。具體的語法格式如下: body content1 /省略 body content 電子信息系*第24頁條件分支標(biāo)簽 為條件分支標(biāo)簽,是標(biāo)簽的子標(biāo)簽,并且是流程控制標(biāo)簽之一。該標(biāo)簽的用途類似于標(biāo)簽且只有在tes

18、t所指定的條件成立時(shí),才會(huì)執(zhí)行body內(nèi)容。該標(biāo)簽的具體語法格式如下: body content test:說明表達(dá)式的條件,類型為boolean。 注意:標(biāo)簽必須和標(biāo)簽同時(shí)出現(xiàn),并且子標(biāo)簽必須先于子標(biāo)簽出現(xiàn)。否則會(huì)產(chǎn)生異常。 電子信息系*第25頁其它條件分支標(biāo)簽 為其它條件分支標(biāo)簽,是流程控制標(biāo)簽之一。該標(biāo)簽與子標(biāo)簽相互匹配。如果父標(biāo)簽內(nèi)所有的子標(biāo)簽的test條件都不成立,那么,將會(huì)執(zhí)行子標(biāo)簽。子標(biāo)簽的具體語法格式如下: body content 標(biāo)簽沒有任何屬性。 電子信息系*第26頁迭代標(biāo)簽(1) 迭代標(biāo)簽有兩種:、。標(biāo)簽的主要功能是用于循環(huán)控制并且可以將集合中的成員循環(huán)瀏覽一遍。標(biāo)簽的

19、主要功能是用于瀏覽字符串中的所有成員并且可以指定一個(gè)或多個(gè)分隔符。 標(biāo)簽的語法格式如下: 標(biāo)簽體 標(biāo)簽的語法格式如下: 標(biāo)簽體 電子信息系*第27頁迭代標(biāo)簽(2) 和標(biāo)簽的屬性如表所示。 屬性名稱類型說明varString表示迭代參數(shù)的名items支持多種類型,如:Arrays、Collection、Map、String等表示被迭代的集合對(duì)象及字符串varStatusString表示當(dāng)前迭代的狀態(tài),可以訪問迭代本身的信息beginint迭代的起始位置endint迭代的結(jié)束位置stepint表示每次循環(huán)的步長(zhǎng)注意:屬性end的取值必須大于begin屬性的取值。 電子信息系*第28頁導(dǎo)入U(xiǎn)RL資源

20、標(biāo)簽(1) 是導(dǎo)入U(xiǎn)RL資源標(biāo)簽。是URL資源標(biāo)簽之一。該標(biāo)簽主要是用于將其它靜態(tài)或動(dòng)態(tài)文件引入到當(dāng)前的jsp頁面中。該標(biāo)簽的兩種語法格式如下: (1)被引入的文件內(nèi)容(URL屬性指定的網(wǎng)頁內(nèi)容)以String對(duì)象的形 式輸出,語法格式如下: /省略 (2)被引入的文件內(nèi)容(URL屬性指定的網(wǎng)頁內(nèi)容)以Reader對(duì)象的形 式輸出。其具體語法格式如下: /省略 電子信息系*第29頁導(dǎo)入U(xiǎn)RL資源標(biāo)簽(2) 標(biāo)簽的所有屬性如表所示。 屬性名稱類型說明urlString表示導(dǎo)入的網(wǎng)頁URLcontextString表示當(dāng)使用相對(duì)路徑訪問其它c(diǎn)ontext時(shí),context指定了此資源的名稱varS

21、tring表示要存儲(chǔ)導(dǎo)入文件內(nèi)容的變量scopeString表示變量var的作用范圍charEncodingString導(dǎo)入文件的字符集varReaderString讀取Reader對(duì)象說明:標(biāo)簽的URL屬性允許使用.URL類所支持的任 何協(xié)議。例如,http(超文本傳輸協(xié)議),ftp(斷點(diǎn)傳輸)等。注意:標(biāo)簽的功能與命令的功能相同。 電子信息系*第30頁構(gòu)造URL標(biāo)簽 是構(gòu)造URL標(biāo)簽,是URL資源標(biāo)簽之一。該標(biāo)簽主要用來為J2EE Web應(yīng)用程序構(gòu)造URL(生成一個(gè)URL)。即當(dāng)前網(wǎng)頁的路徑名,其語法格式有如下兩種。 (1)不包含body內(nèi)容: (2)包含body內(nèi)容: 屬性名稱類型說明v

22、alueString需要構(gòu)造的URLcontextString表示當(dāng)使用相對(duì)路徑訪問其它c(diǎn)ontext時(shí),context指定了此資源的名稱varString存儲(chǔ)構(gòu)造后的URL的變量;scopeString表示變量var的作用范圍,其默認(rèn)值為page電子信息系*第31頁重定向URL標(biāo)簽 是重定向URL標(biāo)簽,是URL資源標(biāo)簽之一。該標(biāo)簽用來將客戶端的請(qǐng)求從一個(gè)jsp頁面導(dǎo)入到其它的頁面并且該標(biāo)簽主要用于http(超文本傳輸協(xié)議)重定向。標(biāo)簽的語法格式有如下兩種: (1)不包含body內(nèi)容。(2)包含body內(nèi)容。 標(biāo)簽的所有屬性: vurl:需要重定向到某個(gè)網(wǎng)頁的URL位置,其類型為String。

23、vcontext:表示當(dāng)使用相對(duì)路徑訪問其它c(diǎn)ontext時(shí),context指定了 此資源的名稱,其類型為String。 電子信息系*第32頁URL參數(shù)傳遞標(biāo)簽 是URL參數(shù)傳遞標(biāo)簽,該標(biāo)簽主要用于將參數(shù)傳遞給所包含的網(wǎng)頁或重定向之后的網(wǎng)頁。其語法格式有如下兩種: (1)使用value屬性的值來設(shè)定參數(shù)的值。 (2)使用body內(nèi)容來設(shè)定參數(shù)的值。 /省略 標(biāo)簽的屬性: vname:設(shè)定的request參數(shù)名,其類型為String。vvalue:設(shè)定的request參數(shù)值,其類型為String。 電子信息系*第33頁8.4 JSTL的XML標(biāo)簽(1) JSTL標(biāo)準(zhǔn)標(biāo)簽庫提供了一些功能強(qiáng)大的XM

24、L(可擴(kuò)展標(biāo)識(shí)語言)操作標(biāo)簽,XML標(biāo)簽大致可以分為3類,分別是:XML核心標(biāo)簽、XML轉(zhuǎn)換標(biāo)簽及XML流程控制標(biāo)簽。1.XML的核心標(biāo)簽有3個(gè):、。 (1)的主要功能是提取XML中的字符串,該標(biāo)簽的語法格式如下: 標(biāo)簽的屬性select表示將要計(jì)算的Xpath,其類型為String。Xpath表示一種目錄(類似于UNIX 下的目錄),它可以通過Xpath來檢索XML中元素或者元素集合。 電子信息系*第34頁8.4 JSTL的XML標(biāo)簽(2) (2)標(biāo)簽主要用于將從XML文件中取得的內(nèi)容存儲(chǔ)到scope所指定的范圍中。語法格式如下: 標(biāo)簽的屬性如表所示。 屬性名稱類型說明selectStrin

25、g表示XPath語句scopeString表示var變量的作用范圍varString表示從XmL文件總?cè)〉玫膬?nèi)容存儲(chǔ)到varName中;電子信息系*第35頁8.4 JSTL的XML標(biāo)簽(3) (3)標(biāo)簽主要用于解析XML文件。其語法格式有如下兩種: 語法1: 語法2: XML Document to parse 屬性名稱類型說明DocString/Reader表示XML文件SystemIdString表示XML文件的URLFilterOrg.xml.sax.XMLFilter表示filter過濾器VarDomString用來存儲(chǔ)解析后的XML文件ScopeDomString表示varDom的范

26、圍VarString用來存儲(chǔ)解析后的XMl文件ScopeString表示var變量的范圍電子信息系*第36頁8.4 JSTL的XML標(biāo)簽(4) 2. XML的轉(zhuǎn)換標(biāo)簽 是XML轉(zhuǎn)換標(biāo)簽,該標(biāo)簽主要通過XSL樣式表對(duì)XML文件進(jìn)行轉(zhuǎn)換。其語法格式有如下3種: 語法1:不包含body內(nèi)容。 語法2:包含body內(nèi)容并且指定參數(shù)。 電子信息系*第37頁8.4 JSTL的XML標(biāo)簽(5) 語法3:包含body內(nèi)容并且指定了需要解析的XML文件和可選的參數(shù)。 /省略 標(biāo)簽的所有屬性如表所示。 屬性名稱類型說明docString/Reader需要進(jìn)行轉(zhuǎn)換的XML文件xsltSystemIdString主要

27、是用來解析xslt屬性規(guī)定的路徑xsltString/Reader用來執(zhí)行轉(zhuǎn)換的XSL樣式表docSystemIdString用來解析doc屬性所設(shè)定的XML文件路徑resultJavax.xml.transform.Result類的實(shí)例用來保存轉(zhuǎn)換后的XmL文件的對(duì)象varString用來存儲(chǔ)解析后的XMl文件scopeString表示var變量的范圍,默認(rèn)值為page電子信息系*第38頁I18n 與國際化與國際化 分分 類類標(biāo)標(biāo) 簽簽說說 明明國際化設(shè)定 setLocale設(shè)定所使用的語言文化區(qū)域 requestEncoding指定編碼方式 資源文件系結(jié) bundle指定所要使用的資源文件

28、名稱 setBundle設(shè)定預(yù)設(shè)的資源文件 message取得資源文件的內(nèi)容 數(shù)字日期格式 timeZone轉(zhuǎn)換時(shí)區(qū)格式 setTimeZone儲(chǔ)存時(shí)區(qū)信息 formatNumber格式化數(shù)值 parseNumber解釋特定數(shù)值格式 formatDate格式化日期 parseDate解釋特定日期格式 電子信息系*第39頁設(shè)定區(qū)域設(shè)定區(qū)域- value屬性是使用標(biāo)簽唯一不可省略的屬性項(xiàng)目,它代表此標(biāo)簽所要指定的區(qū)域代號(hào) 。value由兩個(gè)小寫字母所組成的語言代碼(例如zh)所表示,另外,它還可以加上同樣由兩個(gè)字母所組成的國家代碼,這兩者之間以-或是_作連接。 電子信息系*第40頁指定編碼指定編碼

29、- value屬性代表所要指定的編碼方式字符串,例如設(shè)為GB2312可以讓網(wǎng)頁正確的處理中文亂碼的問題。 電子信息系*第41頁存取存取 i18n 區(qū)域化區(qū)域化內(nèi)容內(nèi)容 支持國際間不同文化區(qū)域語系的網(wǎng)頁功能,是通過提供其關(guān)聯(lián)的資源文件來達(dá)到目的 。 用來指定所要使用的資源文件名稱 。設(shè)定默認(rèn)的資源文件,當(dāng)指定的資源文件不存在時(shí),直接套用默認(rèn)的資源文件 。用來取得資源文件的內(nèi)容,將其顯示在網(wǎng)頁上 。電子信息系*第42頁I18n國際化網(wǎng)頁國際化網(wǎng)頁電子信息系*第43頁 body content屬屬 性性動(dòng)動(dòng)態(tài)態(tài)類類 型型說說 明明basename是String資源文件的名稱,不包含文件本身的擴(kuò)展名

30、prefix是String指定標(biāo)簽當(dāng)中,key值的預(yù)設(shè)前綴 電子信息系*第44頁 語法語法1:無本體內(nèi)容:無本體內(nèi)容 語法語法2:包含指定信息參數(shù)的本體內(nèi)容:包含指定信息參數(shù)的本體內(nèi)容 subtags電子信息系*第45頁語法語法3:包含指定選擇性信息參數(shù)與:包含指定選擇性信息參數(shù)與key值的本體內(nèi)容值的本體內(nèi)容 keyoptional subtags電子信息系*第46頁 屬性屬性屬屬 性性動(dòng)動(dòng)態(tài)態(tài)類類 型型說說 明明key是String所要取得的資源文件內(nèi)容key值 bundle是LocalizationContext資源文件資料來源 var否String用來儲(chǔ)存信息內(nèi)容的變量名稱 scope

31、否String變量var的有效范圍 電子信息系*第47頁 標(biāo)簽的主要功能,便是用來設(shè)定所要讀取的預(yù)設(shè)資源文件,除了basename,var用以指定變量的名稱,此變量?jī)?chǔ)存所要讀取的資源文件內(nèi)容 。資源文件是一種擴(kuò)展名為properties的文本文件,可以利用notepad等簡(jiǎn) 單的文字編輯器進(jìn)行編輯,其內(nèi)容由 鍵/值(key/value) 格式的數(shù)據(jù)所組成 標(biāo)簽指定所要取得的鍵,取出對(duì)應(yīng)的值(value) 。電子信息系*第48頁格式化格式化日期、時(shí)間、貨幣等數(shù)據(jù),不同的地區(qū)有不同的顯示方式。通過格式化標(biāo)簽的設(shè)定,網(wǎng)頁當(dāng)中的數(shù)據(jù)內(nèi)容,可以隨著不同的文化區(qū)域特性,而改變其顯示的數(shù)據(jù)格式 。設(shè)定時(shí)區(qū)的

32、和 。數(shù)字格式化標(biāo)簽有和。日期時(shí)間顯示格式化標(biāo)簽有和。電子信息系*第49頁設(shè)定時(shí)區(qū)設(shè)定時(shí)區(qū)語法語法 body content針對(duì)標(biāo)簽當(dāng)中的本體內(nèi)容,進(jìn)行格式化,其唯一的屬性是value,代表使用的時(shí)區(qū),使用這個(gè)標(biāo)簽,時(shí)區(qū)設(shè)定的影響將只對(duì)本體內(nèi)容有效 。語法語法var屬性用來儲(chǔ)存時(shí)區(qū)的設(shè)定,當(dāng)然這個(gè)屬性是選擇性的,而scopde則是變量的有效范圍。電子信息系*第50頁數(shù)字格式化數(shù)字格式化 語法語法1:無本體內(nèi)容:無本體內(nèi)容 電子信息系*第51頁數(shù)字格式化數(shù)字格式化語法語法2:指定格式化數(shù)值的本體內(nèi)容:指定格式化數(shù)值的本體內(nèi)容 numeric value to be formatted 電子信息系

33、*第52頁屬性屬性屬屬 性性動(dòng)動(dòng)態(tài)態(tài)類類 型型說說 明明value是String/Number被格式化的數(shù)值 var否String儲(chǔ)存格式化數(shù)值的范圍變量 scope否String變量范圍 type是String指定數(shù)值被格式化成為數(shù)字、貨幣或是百分比形式 pattern是String自定義格式化樣式 currencyCode是StringISO4217貨幣代碼,搭配格式(type)作顯示,只有設(shè)定為貨幣格式的時(shí)候,這個(gè)值才有意義 currencySymbol是String貨幣符號(hào),搭配格式(type)作顯示,只有設(shè)定為貨幣格式的時(shí)候,這個(gè)值才有意義 電子信息系*第53頁屬性屬性屬屬 性性動(dòng)動(dòng)

34、態(tài)態(tài)類類 型型說說 明明groupingUsed是boolean指定是否格式化輸出包含分隔符 maxIntegerDigits是int格式化輸出結(jié)果當(dāng)中,整數(shù)字?jǐn)?shù)部份顯示的最大位數(shù) minIntegerDigits是int格式化輸出結(jié)果當(dāng)中,整數(shù)字?jǐn)?shù)部份顯示的最小位數(shù) maxFractionDigits是int格式化輸出結(jié)果當(dāng)中,整數(shù)字?jǐn)?shù)部份顯示的最大位數(shù) minFractionDigits是int格式化輸出結(jié)果當(dāng)中,整數(shù)字?jǐn)?shù)部份顯示的最小位數(shù) 電子信息系*第54頁屬性說明屬性說明分別代表所要進(jìn)行格式處理的數(shù)值,儲(chǔ)存格式化結(jié)果的變量以及可指定變量范圍的scope 。type指定格式化的樣式,n

35、umber、currency以及代表指定的數(shù)據(jù)將以數(shù)值、貨幣或是百分比的形式進(jìn)行格式化,pattern則是讓用戶能夠自行指定格式化的樣式。currencyCode與currencySymbol是用來表示貨幣數(shù)據(jù)的專用屬性,與type屬性當(dāng)中的貨幣(currecy)格式搭配使用,currencyCode為ISO4217所規(guī)范的貨幣代碼,如美金的USD、或是大陸人民幣的CNY等等。currencySymbol則代表貨幣的顯示符號(hào)如$。 groupingUsed指定是否格式化的數(shù)字以分隔符作顯示 。maxIntegerDigits、minIntegerDigits、maxFractionDigits

36、和minFractionDigits,均用以來控制數(shù)值的顯示位數(shù),前兩個(gè)指定一個(gè)數(shù)值當(dāng)中,最大與最小可顯示的位數(shù),后兩個(gè)則是指定小數(shù)的位數(shù)。 電子信息系*第55頁 語法語法1:無本體內(nèi)容:無本體內(nèi)容 電子信息系*第56頁語法語法2:包含本體內(nèi)容:包含本體內(nèi)容 numeric value to be parsed 電子信息系*第57頁日期格式化日期格式化 電子信息系*第58頁屬性屬性屬屬 性性動(dòng)動(dòng)態(tài)態(tài)類類 型型說說 明明value是java.util.Date格式化的日期或是時(shí)間數(shù)據(jù) type是String指定是否格式化日期、時(shí)間或是兩者 dateStyle是String預(yù)先定義的日期格式化樣式

37、 timeStyle是String預(yù)先定義的時(shí)間格式化樣式 pattern是String自定義格式化樣式 timeZone是String/java.util.TimeZone顯示格式化之時(shí)間數(shù)據(jù)的時(shí)區(qū) var是String儲(chǔ)存格式化結(jié)果的變量 scope否String變量范圍 電子信息系*第59頁8.6 其它JSTL標(biāo)簽 8.6.1 數(shù)據(jù)庫標(biāo)簽 8.6.2 字符串處理標(biāo)簽 電子信息系*第60頁數(shù)據(jù)庫標(biāo)簽 (1) 數(shù)據(jù)庫標(biāo)簽包括6個(gè),分別是:、 1標(biāo)簽。 該標(biāo)簽主要用來設(shè)置數(shù)據(jù)來源。其語法格式如下: 屬性名稱類型說明DriverString表示驅(qū)動(dòng)程序的類名稱urlString表示數(shù)據(jù)庫的URL

38、地址UserString表示數(shù)據(jù)庫的用戶名passwordString表示數(shù)據(jù)庫的密碼VarString用來存儲(chǔ)查詢的結(jié)果ScopeString表示var的有效范圍電子信息系*第61頁數(shù)據(jù)庫標(biāo)簽 (2)2標(biāo)簽。該標(biāo)簽主要用來查詢數(shù)據(jù)庫。其語法格式如下: query optionalactions 屬性名稱類型說明dataSourceString表示數(shù)據(jù)來源SqlString表示要查詢的語句maxRowsString表示可以存儲(chǔ)的最大數(shù)據(jù)數(shù)startRowString表示查詢數(shù)據(jù)時(shí)從第幾行開始VarString用來存儲(chǔ)查詢的結(jié)果ScopeString表示var的有效范圍電子信息系*第62頁數(shù)據(jù)庫

39、標(biāo)簽 (3)3標(biāo)簽。該標(biāo)簽主要用于動(dòng)態(tài)設(shè)置變量。其語法格式如下: vvalue:表示Date類型的參數(shù),類型為java.util.Date。vtype:表示Date的種類,類型為String。 4標(biāo)簽。 該標(biāo)簽主要是用于提供存取數(shù)據(jù)庫時(shí)的一種安全機(jī)制,其語法格式如下:or vdataSource:表示數(shù)據(jù)來源,類型是String或javax.sql.DataSource。visolation:表示事務(wù)隔離的級(jí)別。類型為String。 電子信息系*第63頁數(shù)據(jù)庫標(biāo)簽 (4)5標(biāo)簽。該標(biāo)簽主要用于修改數(shù)據(jù)庫中的數(shù)據(jù)。其語法格式如下: 6標(biāo)簽。該標(biāo)簽主要用來動(dòng)態(tài)設(shè)置變量。其語法格式如下: value

40、 vvalue:表示Object類型的參數(shù),類型為Object。 該標(biāo)簽的屬性與標(biāo)簽的屬性相同 。電子信息系*第64頁字符串處理標(biāo)簽(1) 1標(biāo)簽。 該標(biāo)簽主要是用于判斷一個(gè)字符串是否包含另一個(gè)字符串。其語法格式如下: $fn:contains(string,substring) vstring:表示原字符串,類型為String。vSubstring:表示被測(cè)字符串,類型為boolean.。 2標(biāo)簽。 該標(biāo)簽用來判斷字符串是否以另一個(gè)字符串開頭。其語法格式如下: $fn:startsWith(string,prefix) vstring:表示原字符串,類型為String。vprefix:表示被測(cè)字符串,類型為String。 電子信息系*第65頁字符串處理標(biāo)簽(2) 3標(biāo)簽。 該標(biāo)簽主要用于連接字符串。其語法格式如下:$fn:join(array,separator) varray:表示用于結(jié)合的數(shù)組,類型為String。vseparator:用于連接數(shù)組的元素,類型為String。 電子信息系*第66

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論