您现在的位置:计算机技术学习网 > 技术中心 > WEB编程 > JSP >

JSP模板应用指南(上)

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 17:51 点击:
Window 工具包提供了一种典型的布局机制,比如说在一个容器中确定部件元素的位置。在AWT 和 Swing都有布局管理器,而在VisualWorks Smalltalk中有wrapper。本文将介绍一种jsp(SUN企业级应用的首选)模板机制,它允许布局被封装和重新利用。jsp(SUN企业级应用的首选)模板最小化了布局改变所造成的影响,这里我们将鼓励大家采用封装模块化设计。

  尽管 Web开发工具的改进非常迅速,但是它们仍然落后于图形用户界面(GUI)工具包(Swing 和 VisualWorks Smalltalk)。例如,在传统的GUI工具包中提供了布局管理器,在一个窗体或另一个窗体中,允许布局运算被封装和重新利用。本文介绍的这种jsp(SUN企业级应用的首选)模板机制,就象布局管理器一样,可以封装布局,所以它能够被重新利用而不只是复制使用。

  由于在布局的发展过程中出现了许多的变化,而对功能的封装是非常重要的一步,它能够被自如修改而做到对其他应用的影响最小。

  jsp(SUN企业级应用的首选)没有提供对封装布局的直接支持,所以具有统一格式的网页通常可以复制布局代码;例如,在图1中,显示了一个网页,它包含了标题、页脚、工具条以及页面的主要内容。


  图1.网页布局 点击放大(22 KB)

  在图1中显示的网页布局将以HTML表格标签来执行:

  例1.包含内容:

  <html><head><title>jsp(SUN企业级应用的首选)templates</title></head>

  <body background=graphics/background.jpg>

  <table>

   <tr valign=top><td><%@include file=sidebar.html%></td>

     <td><table>

       <tr><td><%@include file=header.html%></td></tr>

       <tr><td><%@include file=introduction.html%></td></tr>

       <tr><td><%@include file=footer.html%></td></tr>

       </table>

     </td>

   </tr>

  </table>

  </body></html>

  在上面的例子中,包括了jsp(SUN企业级应用的首选) include 命令,它允许页面内容改变——通过改变包含的文件——无须修改网页自身。不过,由于布局是很难被编码的,布局改变需要对网页进行修改。如果一个网站有多个相同格式的页面,那么一般情况下甚至简单布局的改变也涉及到整个页面的修改。

  为了减少布局改变所造成的影响,我们需要一种仅仅只包含布局的机制;采用这种机制,布局和内容都可以在不修改文件的情况下分开进行修改。这种机制就是jsp(SUN企业级应用的首选)模板。

使用模板
  模板是一种jsp(SUN企业级应用的首选)文件,它包含了参数化了的内容。这里所讨论的模板使用的是一套定制化标签来执行的:template:get,template:put和template:insert。template:get 标签访问参数化的内容,就象在例 2.a中的一样,它将和图 1一样的格式来生成网页。

  例 2.a.一个模板

  <%@taglib uri=/WEB-INF/tlds/template.tld prefix=template %>

  <html><head><title><template:get name=title/></title></head>

  <body background=graphics/background.jpg>

  <table>

   <tr valign=top><td><template:get name=sidebar/></td>

     <td><table>

        <tr><td><template:get name=header/></td></tr>

        <tr><td><template:get name=content/></td></tr>

        <tr><td><template:get name=footer/></td></tr>

       </table>

     </td>

   </tr>

  </table>

  </body></html>

  例 2.a几乎与例1完全一样,不过在例2.a中我们使用了template:get 取代了例1中的include 命令.让我们来分析一下template:get 如何运行。

  template:get 使用了一个专门的名字(在请求的范围内)来对一个Java Bean进行修改。Bean包含了URI (统一资源标志符,网页的一个组件,它包含在template:get中)。例如,在例 2.a的模板列表中,template:get 获得了一个URI——header.html——从一个名为header 的

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • JSP与Servlet
      • 自己动手写MiniBBS系列(基本篇)之用户登录
      • JSP取当前日期
      • JDBC 入门(一)
      • 打开一个jsp页面默认查询所有数据,调用action
      • 使用JSP标签库验证用户的输入(2)完
      • 自定义JSP标签(tag)浅议
      • WIN98/2000下的jsp服务器
      • JSP内建对象(二)
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1