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

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

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

    鐵手劍譜

    上善若水
    數(shù)據(jù)加載中……
    Struts秘籍之第1段:第2.1式:關(guān)于標(biāo)簽庫(kù)聲明

    第2.2式. 標(biāo)簽庫(kù)聲明

    問(wèn)題

    在每次你需要使用一個(gè)新的標(biāo)簽庫(kù)時(shí),想要避免非要在web.xml中加入taglib元素。

    動(dòng)作要領(lǐng)

    創(chuàng)建一個(gè)JSP 文件包含引用到你所使用的標(biāo)簽庫(kù)描述符的絕對(duì)路徑的taglib指令。Example 2-4 (taglibs.inc.jsp) 就展示了一個(gè)包含對(duì)Struts bean, html, 和logic標(biāo)簽庫(kù)聲明以及JSTL的core 和formatting 標(biāo)簽庫(kù)的taglib聲明的JSP 文件。

    Example 2-4. 通用標(biāo)簽庫(kù)聲明

     

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
    <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
    <%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>

    然后在JSP使用下面的指令包含這個(gè)文件:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

    <!-- start taglib -->
    <%@ include file="/includes/taglibs.inc.jsp" %>
    <!-- end taglib -->

    <html:html>
      
    <body>
        

    因?yàn)槟阍趖aglib中使用的是絕對(duì)路徑,你將不需要在web.xml文件中輸入對(duì)應(yīng)的taglib元素。

    動(dòng)作變化

    如果你使用的是符合JSP 1.2/Servlet 2.3 的容器,比如Tomcat 4.x 或者更高,你就可以在JSP頁(yè)面的taglib指令中使用絕對(duì)路徑而不必在web.xml中指定taglib元素。

    對(duì)于早于Servlet 2.3 規(guī)范的情況,你仍然需要在web.xml中聲明所有你所使用的JSP 標(biāo)簽。下面摘自web.xml部署描述符中的代碼片斷展示了用于Struts應(yīng)用的典型taglib聲明:

    <!-- Struts Tag Library Descriptors -->
    <taglib>
      
    <taglib-uri>/tags/struts-bean</taglib-uri>
      
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
    </taglib>
    <taglib>
      
    <taglib-uri>/tags/struts-html</taglib-uri>
      
    <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
    </taglib>
    <taglib>
      
    <taglib-uri>/tags/struts-logic</taglib-uri>
      
    <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
    </taglib>
    <taglib>
      
    <taglib-uri>/tags/struts-nested</taglib-uri>
      
    <taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
    </taglib>

    從Servlet 2.3 之后,標(biāo)簽庫(kù)的絕對(duì)URI 在該庫(kù)的標(biāo)簽庫(kù)描述符 (TLD) 文件中指定。比如,下面就是struts-bean.tld文件中的相應(yīng)聲明:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag 
    Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"
    >
    <taglib>
      
    <tlibversion>1.0</tlibversion>
      
    <jspversion>1.1</jspversion>
      
    <shortname>bean</shortname>
      
    <uri>http://jakarta.apache.org/struts/tags-bean</uri>

    任何需要使用這個(gè)標(biāo)簽庫(kù)的頁(yè)面都可以通過(guò)下面的頁(yè)面級(jí)指令來(lái)引用它。標(biāo)簽庫(kù)不需要再在web.xml文件中引用:

    <%@ taglib
            
    uri="http://jakarta.apache.org/struts/tags-bean"
            prefix
    ="bean" %>

    如果你在整個(gè)應(yīng)用中使用相同的標(biāo)簽庫(kù),你可以使用基本動(dòng)作中所述的方法,即創(chuàng)建一個(gè)包含通用標(biāo)簽庫(kù)聲明指令的包含JSP文件。如果你引用了不需要的標(biāo)簽庫(kù),其實(shí)也不會(huì)有太大的性能損失,所以你可以在每個(gè)JSP頁(yè)面中安全的包含這個(gè)文件。如果URI 改變,你將只需要修改一個(gè)地方而不是每一個(gè)JSP文件。

    Table 2-1 展示了版本1.1 和1.2 的Struts中的標(biāo)簽庫(kù)絕對(duì)URI的完整列表。

    Table 2-1. Struts 標(biāo)簽庫(kù)URI

    Tag library

    Struts 1.1 URI

    Struts 1.2 URI

    struts-bean

    http://jakarta.apache.org/struts/tags-bean

    http://struts.apache.org/tags-bean

    struts-html

    http://jakarta.apache.org/struts/tags-html

    http://struts.apache.org/tags-html

    struts-logic

    http://jakarta.apache.org/struts/tags-logic

    http://struts.apache.org/tags-logic

    struts-nested

    http://jakarta.apache.org/struts/tags-nested

    http://struts.apache.org/tags-nested

    struts-template

    http://jakarta.apache.org/struts/tags-template

    不再包括,被Tiles代替

    struts-tiles

    http://jakarta.apache.org/struts/tags-tiles

    http://struts.apache.org/tags-tiles

    struts-bean-el

    http://jakarta.apache.org/struts/tags-bean-el

    http://struts.apache.org/tags-bean-el

    struts-html-el

    http://jakarta.apache.org/struts/tags-html-el

    http://struts.apache.org/tags-html-el

    struts-logic-el

    http://jakarta.apache.org/struts/tags-logic-el

    http://struts.apache.org/tags-logic-el

     

    有些開(kāi)發(fā)人員喜歡使用絕對(duì)URI,而有些仍然喜歡使用web.xml的聲明。需要指出的是,后一種方式可以將你的應(yīng)用代碼和下層的標(biāo)簽庫(kù)改變隔離開(kāi)來(lái)。如果URI 改變,你只需要修改web.xml文件中的相關(guān)聲明。你并不需要修改每個(gè)JSP頁(yè)面,包括被包含的JSP片斷。這種方式也是有效的,也有可取之處。最后,采用那種方式完全取決于個(gè)人喜好。

    相關(guān)招式

    JSP規(guī)范有一些稍微有點(diǎn)復(fù)雜的規(guī)則來(lái)解析標(biāo)簽庫(kù)的URI。詳細(xì)的信息可以參考JSP的規(guī)范,它可以在http://java.sun.com/jsp處下載。

    第3.1式將向你展示在Struts應(yīng)用中使用JSP 標(biāo)準(zhǔn)標(biāo)簽庫(kù)(JSTL) 。

     

    posted on 2005-05-11 10:04 鐵手 閱讀(2486) 評(píng)論(1)  編輯  收藏 所屬分類: JavaStruts系列

    評(píng)論

    # Struts 秘籍(CookBook)[TrackBack] 2005-11-12 18:29 阿泠

    本系列源改編自O(shè)'Reily的Strus Cookbook
    [引用提示]阿泠引用了該文章, 地址: http://blog.donews.com/inclear/archive/2005/11/12/624363.aspx
    主站蜘蛛池模板: 亚洲狠狠ady亚洲精品大秀| 嫩草成人永久免费观看| 巨波霸乳在线永久免费视频 | 久久精品国产亚洲AV大全| 免费播放特黄特色毛片| 国内精品免费久久影院| 亚洲色偷偷偷网站色偷一区| 人妻视频一区二区三区免费| 黄色a级片免费看| 日本亚洲色大成网站www久久| 91嫩草私人成人亚洲影院| 亚洲熟妇无码八AV在线播放| 又大又硬又爽免费视频| 最新猫咪www免费人成| 亚洲国产精品免费观看| 99精品视频在线观看免费专区 | 国产亚洲美日韩AV中文字幕无码成人 | 一二三四在线播放免费观看中文版视频 | 亚洲日韩在线中文字幕综合 | 国产在线播放免费| 午夜小视频免费观看| 歪歪漫画在线观看官网免费阅读| 无码av免费网站| 亚洲av日韩精品久久久久久a| 亚洲噜噜噜噜噜影院在线播放 | 久久久久免费视频| 亚洲国产系列一区二区三区| 亚洲精品免费在线视频| 麻豆亚洲AV永久无码精品久久| 久久亚洲国产伦理| 亚洲成av人片天堂网老年人| 国产男女猛烈无遮挡免费网站| 处破痛哭A√18成年片免费| 午夜老司机免费视频| 成人免费无毒在线观看网站| 思思re热免费精品视频66| 日韩不卡免费视频| 无码视频免费一区二三区| 暖暖日本免费在线视频 | 国产成人亚洲午夜电影| 牛牛在线精品免费视频观看|