赛迪网 > IT技术 今日更新 > 文章
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

采用Tiles:Insert标签创建复合式网页

发布时间:2004.11.25 10:53     来源:飞思科技    作者:孙卫琴

    Tiles标签库的tiles:insert标签和JSP include指令具有相同的功能,也能把其他的JSP页面插入到当前页面中。例如,以下两条语句的作用是相同的:

<jsp:include page="indexContent.jsp"/>
<tiles:insert page="indexContent.jsp" flush="true"/>

    标签的page属性指定被插入的JSP文件,flush属性的可选值包括true和false,当flush属性为true,表示在执行插入操作之前,先调用当前页面的输出流的flush()方法。

    提示:本节介绍的tilestaglibs应用的源程序位于配套光盘的sourcecode/tilestaglibs/version3/tilestaglibs目录下。如果要在Tomcat上发布这个应用,只要把version3目录下的整个tilestaglibs子目录拷贝到/webapps目录下即可。

    以下是在tilestaglibs应用中使用标签的步骤。

    (1)安装Tiles标签库所需的文件
    在Struts的下载软件中包含了运行Tiles标签库所需的文件。如果Web应用中使用了Tiles标签库,以下文件必须位于WEB-INF/lib目录中:
    ·struts.jar
    ·commons-digester.jar
    ·commons-beanutils.jar
    ·commons-collections.jar
    ·commons-logging.jar

    此外,应该把Tiles标签库的定义文件struts-tiles.tld拷贝到WEB-INF目录下。

    (2)在web.xml文件中配置如下元素:

<taglib>
    <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
</taglib>

    (3)创建index.jsp和product.jsp文件
    修改16.2节的例程16-8(index.jsp)和例程16-9(product.jsp),在index.jsp和product.jsp文件的开头,通过%@ taglib指令引入Tiles标签库,然后把源代码中的JSP include指令改为tiles:insert标签。例程16-10和例程16-11分别为修改后的index.jsp和product.jsp文件。

    例程16-10 ndex.jsp

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<html>
   <head>
      <title>TilesTaglibs Sample</title>
   </head>
   <body >
      <%-- One table lays out all of the content for this page --%>
      <table width="100%" height="100%">
         <tr>
            <%-- Sidebar section --%>
            <td width="150" valign="top" align="left" bgcolor="#CCFFCC">
               <tiles:insert page="sidebar.jsp" flush="true"/>
            </td>
            <%-- Main content section --%>
            <td height="100%" width="*">
               <table width="100%" height="100%">
                  <tr>
                     <%-- Header section --%>
                     <td valign="top" height="15%">
                        <tiles:insert page="header.jsp" flush="true"/>
                     </td>
                  <tr>
                  <tr>
                     <%-- Content section --%>
                     <td valign="top" height="*">
                        <tiles:insert page="indexContent.jsp" flush="true"/>
                     </td>
                  </tr>
                  <tr>
                     <%-- Footer section --%>
                     <td valign="bottom" height="15%">
                        <tiles:insert page="footer.jsp" flush="true"/>
                     </td>
                  </tr>
               </table>
            </td>
         </tr>
      </table>
   </body>
</html>

    例程16-11 product.jsp

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<html>
   <head>
      <title>TilesTaglibs Sample</title>
   </head>
   <body >
      <%-- One table lays out all of the content for this page --%>
      <table width="100%" height="100%">
         <tr>
            <%-- Sidebar section --%>
            <td width="150" valign="top" align="left" bgcolor="#CCFFCC">
               <tiles:insert page="sidebar.jsp" flush="true"/>
            </td>
            <%-- Main content section --%>
            <td height="100%" width="*">
               <table width="100%" height="100%">
                  <tr>
                     <%-- Header section --%>
                     <td valign="top" height="15%">
                        <tiles:insert page="header.jsp" flush="true"/>
                     </td>
                  <tr>
                  <tr>
                     <%-- Content section --%>
                     <td valign="top" height="*">
                        <tiles:insert page="productContent.jsp" flush="true"/>
                     </td>
                  </tr>
                  <tr>
                     <%-- Footer section --%>
                     <td valign="bottom" height="15%">
                        <tiles:insert page="footer.jsp" flush="true"/>
                     </td>
                  </tr>
               </table>
            </td>
         </tr>
      </table>
   </body>
</html>

    从例程16-10和例程16-11可以看出,用tiles:insert标签取代JSP include指令来创建复合式页面,代码仅有稍微的差别,两者的利弊也很相似。单纯使用tiles:insert标签来创建复合式页面,还没有充分发挥Tiles框架的优势。(T111)

本文选自飞思图书《精通Struts:基于MVC的Java Web设计与开发》


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
[政务][电信][金融][农业][制造业][中小企业]
[CIO][ERP][协同][IT管理][中间件][电子商务]
[政策][地方][专家][评估][辞典][博客][社区]
· 专题:一路畅通构想曲——让出行不再遭遇堵车
· CIO工作亲历:企业ERP选型不能忽视"选人关"
· 综述:信息化建设给中国监狱带来的各种变化
· 金融业风险管理和法规遵从有五点需考虑的因素
· 保险业CIO关注:该如何建立统一高效的CRM体系
· 调查显示:多数CIO对IT规划仍存在困惑和误解
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管