<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    想飛就別怕摔

    大爺?shù)牟M罵人

    Struts2.0標(biāo)簽庫(一)控制標(biāo)簽

    Struts2.0標(biāo)簽大體可分為以下幾類:
    1.UI(User Interface,用戶界面)標(biāo)簽:主要生成HTML元素標(biāo)簽;
        (1)表單標(biāo)簽:用于生成HTML頁面的form元素,以及普通表單元素的標(biāo)簽。
        (2)非表單標(biāo)簽:用于生成頁面上的樹、Tab也等標(biāo)簽。
    2.非UI標(biāo)簽:主要用于數(shù)據(jù)訪問、邏輯控制等的標(biāo)簽;
        (1)流程控制標(biāo)簽:主要包含用于實現(xiàn)分支、循環(huán)等流程控制的標(biāo)簽。
        (2)數(shù)據(jù)訪問標(biāo)簽:主要包含與輸出ValueStack中的值,完成國際化等功能的標(biāo)簽。
    3.Ajax標(biāo)簽:用于Ajax支持的標(biāo)簽;
    一、使用Struts2標(biāo)簽庫的準(zhǔn)備
    在工程中加入Struts2的Jar文件。
    修改Web.xml文件如:
     1<?xml version="1.0" encoding="UTF-8"?>
     2<web-app version="2.4" 
     3    xmlns="http://java.sun.com/xml/ns/j2ee" 
     4    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     5    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
     6    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
     7    <filter>
     8        <filter-name>struts2</filter-name>
     9        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    10    </filter>
    11    <filter-mapping>
    12        <filter-name>struts2</filter-name>
    13        <url-pattern>/*</url-pattern>
    14    </filter-mapping>
    15</web-app>
    二、在使用標(biāo)簽時別忘了用taglib編譯指令導(dǎo)入Struts2的標(biāo)簽庫定義
    1<%%>
    三、下面我就開始探討一下Struts2.0標(biāo)簽庫控制標(biāo)簽的使用。
    1.if/elseif/else標(biāo)簽
     1<%@ page language="java" pageEncoding="ISO-8859-1"%>
     2<%@ taglib prefix="s" uri="/struts-tags" %>
     3<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     4<html>
     5  <head>
     6    <title>If_Else</title>
     7  </head>
     8  <body>
     9    <s:set name="name" value="#parameters.name[0]"></s:set>
    10    <s:if test="#name=='woailuo'">
    11        woailuo is here!
    12    </s:if>

    13    <s:elseif test="#name=='mingren'">
    14        mingren is here!
    15    </s:elseif>

    16    <s:else>
    17        zuozhu is here!
    18    </s:else>

    19  </body>
    20</html>
    2.Iterator標(biāo)簽
    Iterator主要對集合進(jìn)行迭代,包括List、Set、Map;它的屬性有3個:
        (1)value:可選屬性,value指定被迭代的集合,被迭代的集合通常用OGNL表達(dá)式指定。如沒有value屬性,則使用ValueStatus棧頂?shù)募稀?br />     (2)id:可選屬性,指定集合中的元素的ID。
        (3)status:可選屬性,給屬性指定迭代的IteratorStatus實力,該實例包含幾個方法:int getCount()返回當(dāng)前迭代了幾個元素;int getIndex()返回當(dāng)前迭代元素的索引;Boolean isEven()返回當(dāng)前迭代的元素是否是偶數(shù);boolean isOdd()返回是否是奇數(shù);boolean isFirst()是否是第一個元素;boolean isLast()是否是最后一個。
     1<%@ page language="java"  pageEncoding="utf-8"%>
     2<%@ taglib prefix="s" uri="/struts-tags" %>
     3<html>
     4  <head>
     5    <title>iterator</title>
     6  </head>
     7  <body>
     8      <table border="1" width=100>
     9          <s:iterator value="{'struts2.0','hibernate','ajax','spring'}" id="name" status="st">
    10              <tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>
    11                  <td><s:property value="#st.count"/><s:property value="name"/></td>
    12              </tr>
    13          </s:iterator>
    14      </table>
    15  </body>
    16</html>
    3.append標(biāo)簽
    append標(biāo)簽用于將多個集合對象拼接起來,組合一個新的集合。從而通過一個<s:iterator.../>完成對多個集合的迭代。
     1<%@ page language="java"  pageEncoding="utf-8"%>
     2<%@ taglib prefix="s" uri="/struts-tags" %>
     3<html>
     4  <head>
     5    <title>iterator</title>
     6  </head>
     7  <body>
     8      <table border="1" width="100">
     9          <s:append id="newList">
    10              <s:param value="{'struts2.0','hibernate','ajax','spring'}"/>
    11              <s:param value="{'javaScript','sql server'}"/>
    12          </s:append>
    13          <s:iterator value="#newList" status="st">
    14              <tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>
    15                  <td><s:property value="#st.count"/><s:property/></td>
    16              </tr>
    17          </s:iterator>
    18      </table>
    19  </body>
    20</html>
    21
    4.merge標(biāo)簽
    merge標(biāo)簽與append標(biāo)簽非常相似,他們都是將多個集合拼接成一個。他們的區(qū)別在于拼接后集合元素的順序不同。
    append方式拼接,新元素的順序為:
    (1)第一個集合中的第一個元素;
    (2)第一個集合中的第二個元素;
    (3)第二個集合中的第一個元素;
    (4)第二個集合中的第二個元素;
    merge方式拼接,新元素的順序為:
    (1)第一個集合中的第一個元素;
    (2)第二個集合中的第一個元素;
    (3)第一個集合中的第二個元素;
    (4)第二個集合中的第二個元素;
    5.subset標(biāo)簽
    subset標(biāo)簽用于取得集合的子集,它的屬性有如下:
    (1)count:可選屬性,指定子集中元素的個數(shù),默認(rèn)取得全部;
    (2)source:可選屬性,指定源集合,默認(rèn)取得ValueStack棧頂?shù)募希?br /> (3)start:可選屬性,指定子集從源集合第幾個開始截取,默認(rèn)從第一個截取(start為0);
    (4)decider:可選屬性,是否選中該屬性;
     1<%@ page language="java" pageEncoding="utf-8"%>
     2<%@ taglib prefix="s" uri="/struts-tags"%>
     3<html>
     4    <head>
     5        <title>iterator</title>
     6    </head>
     7    <body>
     8        <table border="1" width="100">
     9            <s:subset
    10                source="{'struts2.0','hibernate','ajax','spring','javaScript'}"
    11                count="3" start="1" id="subset">
    12            <s:iterator status="st">
    13                <tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>
    14                    <td>
    15                        <s:property value="#st.count" />
    16                        <s:property/>
    17                    </td>
    18                </tr>
    19            </s:iterator>
    20            </s:subset>
    21        </table>
    22    </body>
    23</html>
    24
    6.關(guān)于控制標(biāo)簽還有g(shù)enerator標(biāo)簽和sort標(biāo)簽
    他們的作用分別是:generator是將指定的字符串按指定的分隔符分隔成多個子串;sort是對指定的集合元素進(jìn)行排序必須提供自己的排序規(guī)則。
    因為這兩個用到的比較少,所以就不羅嗦了。

    posted on 2008-10-24 14:56 生命的綻放 閱讀(1589) 評論(2)  編輯  收藏 所屬分類: Struts2.0

    評論

    # re: Struts2.0標(biāo)簽庫(一)控制標(biāo)簽 2008-10-24 15:32 楊愛友

    差不多,我現(xiàn)在很少用STRUTS標(biāo)簽,都用JSTL,不過差不多都能找到對應(yīng)的標(biāo)簽,關(guān)鍵字不一樣,形式差不多,都能避免在JSP頁面融入JAVA代碼。  回復(fù)  更多評論   

    # re: Struts2.0標(biāo)簽庫(一)控制標(biāo)簽 2010-08-20 14:49 向前走的螃蟹

    呵呵  回復(fù)  更多評論   

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計

    常用鏈接

    留言簿(5)

    隨筆分類(94)

    隨筆檔案(93)

    文章分類(5)

    文章檔案(5)

    相冊

    JAVA之橋

    SQL之音

    兄弟之窗

    常用工具下載

    積分與排名

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 亚洲人成无码久久电影网站| 人妻免费一区二区三区最新| 久久久久久免费视频| 亚洲乱码精品久久久久..| 精品特级一级毛片免费观看| 天天天欲色欲色WWW免费| 亚洲入口无毒网址你懂的| 久久综合AV免费观看| 77777午夜亚洲| 成人免费无遮挡无码黄漫视频| 久久精品国产亚洲AV蜜臀色欲| 69天堂人成无码麻豆免费视频| 久久精品国产亚洲AV忘忧草18| 国产h视频在线观看免费| 亚洲国产综合精品中文第一| 最近中文字幕mv免费高清电影| 亚洲另类无码一区二区三区| 国产无遮挡又黄又爽免费视频| 美女羞羞视频免费网站| 久久亚洲AV永久无码精品| 中文字幕日本人妻久久久免费| 亚洲一区二区影院| 成人特黄a级毛片免费视频| 亚洲大码熟女在线观看| 亚洲精品视频久久久| 日本免费高清视频| 亚洲中文字幕在线无码一区二区| 和日本免费不卡在线v| 337P日本欧洲亚洲大胆艺术图| 午夜亚洲av永久无码精品| 国产伦精品一区二区免费| 亚洲韩国在线一卡二卡| 免费看又爽又黄禁片视频1000| 免费福利在线观看| 久久精品7亚洲午夜a| 一区二区无码免费视频网站| 日韩一区二区三区免费播放| 久久国产精品亚洲综合| 日韩在线免费看网站| 麻豆精品不卡国产免费看| 亚洲小说图区综合在线|