亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

JSP基礎知識之變量數據的HTML模板語法

2024-09-05 00:08:44
字體:
來源:轉載
供稿:網友

當頁面被返回給瀏覽器時,應用服務器HTML 模板語法使您能將變量字段放在 HTML 頁面上,并使 Servlet 和 JavaBean 可利用數據庫的值動態地替換變量。該功能是 JSP 的一個 IBM 擴展,它使引用變量數據變得十分容易。該語法只能用于 JSP 文件中。HTML 模板語法包括:

基本 HTML 模板語法;

替代 HTML 模板語法;

<REPEAT>標記。

這些標記通過 HTML 編寫工具被設計成傳遞交互操作的標記。每一個標記有一個相應的結束標記。每一個標記是分大小寫的,它們的一些屬性也是分大小寫的。IBM WebSphere Studio 使開發 JSP 文件以包含 HTML 模板語法變得更為容易。

(1) 基本 HTML 模板語法

<INSERT> 標記是用于指定變量字段的基本標記。一般的語法為:

<insert requestparm=pvalue requestattr=avalue bean=name
  property=property_name(optional_index).subproperty_name(optional_index)
  default=value_when_null>
  </insert>

其中的屬性及其含義如下:

requestparm:要在請求對象內進行訪問的參數。該屬性是分大小寫的,并且不能與Bean 和property屬性一起使用。

Requestattr:要在請求對象內進行訪問的屬性。屬性應使用 setAttribute 方法設置。該屬性是分大小寫的,并且不能與 Bean 和property屬性一起使用。

Bean:由 <BEAN> 標記在 JSP 文件中說明的 JavaBean 名。請參閱訪問 JavaBean 以獲得 <BEAN> 標記的解釋。該屬性的值是分大小寫的。當指定了 Bean 屬性,但未指定property屬性時,在替換中將使用完整的 Bean 。例如,如果 Bean 是類型 String 且未指定屬性,則將替代 string 的值。

Property:訪問替換的 Bean 的屬性。該屬性的值是分大小寫的,并且是屬性的獨立場所名。該屬性不能與 requestparm 屬性一起使用。

Default:當 Bean 屬性值為空時,顯示可選的字符串。如果字符串包含多個字,則該字符串必須包含在一對雙引號中(例如 "HelpDesk number")。該屬性的值是分大小寫的。如果未指定值,則當屬性值為空時,用空字符串替代。

基本語法的示例如下:

<insert bean=userProfile property=username></insert>
  <insert requestparm=company default="IBM Corporation"></insert>
  <insert requestattr=ceo default="Company CEO"></insert>
  <insert bean=userProfile property=lastconnectiondate.month></insert>

在大多數情況下,property屬性的值就是屬性名。但是,可以通過指定property屬性的全格式來訪問屬性的某一屬性(子屬性)。這個全格式也提供選擇項給您來指定索引屬性的一個索引。該可選的索引可以是一個常數(例如 2)或如重復設置 HTML 標記中描述的索引。使用屬性標記的全格式示例如下:

<insert bean=staffQuery property=address(currentAddressIndex)></insert>
  <insert bean=shoppingCart property=items(4).price></insert>
  <insert bean=fooBean property=foo(2).bat(3).boo.far></insert>

(2) 替代 HTML 模板語法

HTML 標準不允許在 HTML 標記中嵌入 HTML 標記。因而,就無法在另一個 HTML 標記中嵌入<INSERT>標記。作為代替,請使用 HTML 模板替代語法。要使用替代語法:

請使用<INSERT>和</INSERT>來包含 HTML 標記,在該標記中指出替代內容。

指定 Bean 和property屬性:

要指定 Bean 和屬性特性,請使用下列格式:$(bean=b property=p default=d),其中 b、p 和 d
作為描述基本語法的值。

要指定 requestparm 屬性,請使用下列格式:$(requestparm=r default=d),其中 r 和 d 作為
描述基本語法的值。

要指定 requestattr 屬性,請使用下列格式:$(requestattr=r default=d),其中 r 和 d 作為描述
基本語法的值。

 替代 HTML 模板語法的示例如下:

<insert>
  <img src=$(bean=productAds property=sale default=default.gif)>
  </insert>
  <insert>
  <a href="http://www.myserver.com/map/showmap.cgi?country=$(requestparm=country default=
  usa )
  &city$(requestparm=city default="Research Triangle Park")&email=
  $(bean=userInfo property=email)>Show map of city</a>
  </insert>

(3) <REPEAT>標記

<REPEAT>標記的語法為:

<repeat index=name start=starting_index end=ending_index>
  </repeat>

其中:

index:是用于標識該重復數據塊的一個可選的名稱。該值是分大小寫的。

Start:是用于該重復數據塊的一個可選的開始索引值。缺省值為 0 。

End:是用于該重復數據塊的一個可選的結束索引值。最大值是 2,147,483,647。如果結束屬性的值小于開始屬性的值,則忽略結束屬性。

下面的示例 1、2 和 3 顯示了如何使用<REPEAT>標記。如果所有的索引屬性擁有 300 個或更少的元素,則這些示例將產生相同的輸出。如果擁有的元素多于 300 個,示例 1 和示例 2 將顯示所有的元素,而示例 3 將只顯示前 300 個元素。示例 1 用缺省開始和結束索引顯示了隱式索引:使用最小索引屬性數的 bean 限制了循環重復的次數。

<table>
  <repeat>
  <tr><td><insert bean=serviceLocationsQuery property=city></insert></tr></td>
  <tr><td><insert bean=serviceLocationsQuery property=address></insert></tr></td>
  <tr><td><insert bean=serviceLocationsQuery property=telephone></insert></tr></td>
  </repeat>
  </table>

示例 2 顯示了索引、開始索引和結束索引:

<table>
  <repeat index=myIndex start=0 end=2147483647>
  <tr><td><insert bean=serviceLocationsQuery property=city(myIndex)></insert></tr></td>
  <tr><td><insert bean=serviceLocationsQuery property=address(myIndex)></insert></tr>
  </td>
  <tr><td><insert bean=serviceLocationsQuery property=telephone(myIndex)></insert></tr>
  </td>
  </repeat>
  </table>

示例 3 用隱式開始索引顯示了顯式索引和結束索引。雖然指定了索引屬性,仍可對索引過的屬性城市進行隱式索引,因為不需要(i)。

<table>
  <repeat index=myIndex end=299>
  <tr><td><insert bean=serviceLocationsQuery property=city></insert></tr></td>
  <tr><td><insert bean=serviceLocationsQuery property=address(myIndex)></insert></tr>
  </td>
  <tr><td><insert bean=serviceLocationsQuery property=telephone(myIndex)></insert></tr>
  </td>
  </repeat>
  </table>

可以嵌套<REPEAT>數據塊。獨立索引每個數據塊。該能力對交叉兩個 bean 上的交錯屬性或含有子屬性的屬性非常有用。在示例中,將兩個<REPEAT>數據塊嵌套,用以顯示用戶購物手推車上每一張壓縮光盤上的歌曲列表。

<repeat index=cdindex>
  <h1><insert bean=shoppingCart property=cds.title></insert></h1>
  <table>
  <repeat>
  <tr><td><insert bean=shoppingCart property=cds(cdindex).playlist></insert>
  </td></tr>
  </table>
  </repeat>
  </repeat>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕在线看视频国产欧美在线看完整| 国产成人在线亚洲欧美| 欧美亚洲国产另类| 黑人巨大精品欧美一区二区三区| 欧美综合国产精品久久丁香| 萌白酱国产一区二区| 国产在线一区二区三区| 亚洲自拍偷拍一区| 国产日韩欧美在线视频观看| 国产精品午夜国产小视频| 成人免费在线网址| 欧美高跟鞋交xxxxhd| 国产一区私人高清影院| 国产精品久久久久久久久久ktv| 欧美一级大片视频| 国产视频亚洲精品| 国产精品自在线| 精品国产福利视频| 国产精品三级网站| 91大神在线播放精品| 国产美女高潮久久白浆| 久热精品视频在线观看一区| 亚洲电影免费观看高清完整版在线观看| 青青a在线精品免费观看| 欧美最猛性xxxx| 亚洲二区在线播放视频| 精品久久久久久久久久ntr影视| 亚洲人成网站999久久久综合| 亚洲国产精品专区久久| 国产精品国产自产拍高清av水多| 久久久久久久一区二区| 国产一区二区美女视频| 92版电视剧仙鹤神针在线观看| 久久精品一偷一偷国产| 亚洲最大在线视频| 国产精品久久久久久久久久小说| 不卡伊人av在线播放| 亚洲人成网站999久久久综合| 国产91对白在线播放| 欧美亚洲在线视频| 色偷偷噜噜噜亚洲男人的天堂| 亚洲国产精品大全| 九九精品在线播放| 欧美亚洲视频在线观看| 欧美成人精品xxx| 欧美高清videos高潮hd| 91成人在线视频| 91精品视频大全| 亚洲欧美制服第一页| 亚洲成人教育av| 亚洲欧美在线第一页| 伊人一区二区三区久久精品| 亚洲精品mp4| 亚洲男女性事视频| www亚洲欧美| 成人性生交大片免费观看嘿嘿视频| 欧美国产极速在线| 亚洲成人免费网站| 国产999在线| 久久天天躁狠狠躁夜夜躁| 日韩美女免费线视频| 97精品国产97久久久久久免费| 国产在线精品自拍| 91国产美女在线观看| 大桥未久av一区二区三区| 91最新国产视频| 国产69精品久久久久99| 亚洲人成在线一二| 亚洲性xxxx| 性色av一区二区三区在线观看| 最近中文字幕mv在线一区二区三区四区| 性夜试看影院91社区| 色噜噜亚洲精品中文字幕| 色婷婷av一区二区三区久久| 亚洲sss综合天堂久久| 亚洲美女激情视频| 欧美xxxx14xxxxx性爽| 亚洲第五色综合网| 永久555www成人免费| 国产精品丝袜白浆摸在线| 亚洲春色另类小说| 国产精品女人久久久久久| 亚洲午夜未删减在线观看| 亚洲人成五月天| 欧美亚洲在线播放| 91精品国产91久久久久久吃药| 国产精品三级在线| 亚洲精品成人av| 日韩av不卡在线| 日韩中文av在线| 亚洲区中文字幕| 日韩成人黄色av| 成人国产精品av| 91成人国产在线观看| 2020久久国产精品| 国产91网红主播在线观看| 欧美日韩国产中文精品字幕自在自线| 亚洲а∨天堂久久精品9966| 亚洲第一网站男人都懂| 国产91在线视频| 欧美最猛性xxxxx(亚洲精品)| 久久韩剧网电视剧| 欧美一级大片在线免费观看| 91精品国产自产91精品| 日韩av在线网| 亚洲新中文字幕| 91情侣偷在线精品国产| 国产精品入口日韩视频大尺度| 久久精品电影一区二区| 亚洲a∨日韩av高清在线观看| 亚洲一级黄色片| 亚洲精品久久久久中文字幕欢迎你| 国产精品欧美一区二区三区奶水| 欧美日韩国产激情| 日韩av在线网| 日韩精品中文字幕在线观看| 欧美性黄网官网| 国产亚洲一级高清| 精品自在线视频| 色婷婷综合久久久久中文字幕1| 亚洲码在线观看| 国产日韩中文在线| 91精品久久久久久综合乱菊| 国产精品成人国产乱一区| 国产日韩在线亚洲字幕中文| 国产精品爽爽爽爽爽爽在线观看| 日韩欧美极品在线观看| 亚洲精品免费一区二区三区| 国产精品吹潮在线观看| 在线观看亚洲视频| 欧美成人精品激情在线观看| 久久中文字幕在线视频| 日韩成人高清在线| 国产免费一区二区三区在线观看| 91精品国产沙发| 久久亚洲精品中文字幕冲田杏梨| 久久久亚洲欧洲日产国码aⅴ| 欧美成年人视频网站| 91产国在线观看动作片喷水| 欧美日韩国产在线播放| 亚洲国内精品视频| 一区二区亚洲欧洲国产日韩| 欧美日韩福利在线观看| 亚洲人成绝费网站色www| 国产免费一区视频观看免费| 青青a在线精品免费观看| 日韩视频在线免费观看| 久久久久久久久久久久av| 久久天天躁夜夜躁狠狠躁2022| 91精品国产91久久久| 国产免费观看久久黄| 亚洲品质视频自拍网| 亚洲国产日韩欧美在线图片| 欧美国产日韩中文字幕在线| 欧美成年人网站| 欧美一级片久久久久久久| 国产97在线|日韩| 久久久久久久97| 夜夜嗨av一区二区三区四区| 国产精品黄页免费高清在线观看| 97视频在线看| www.日本久久久久com.| 91精品国产91久久久久久| 日韩中文字幕av|