知识大全 用Struts实现模板

Posted 文件

篇首语:人类的历史,就是一个不断地从必然王国向自由王国发展的历史。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用Struts实现模板相关的知识,希望对你有一定的参考价值。

用Struts实现模板  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  如果不用框架来开发一个门户站点将会是一件很困难的事 使用模版可以减少些麻烦 他可以让你在眨眼之间方便的更新与部署站点上的内容 用Struts模版标签可以帮助你开发以模版为基础的门户站点       这篇文章解释了与门户有关的一些基本的模版思想 介绍了Struts对于模版的支持 围绕着Struts模版标签进行了讨论 本文还阐述了其他的一些模版机制       获得Struts   网络应用程序框架使用MVC模式 能简化网络站点的开发 Struts正是这样的一个框架 它提供了类集 标签库和一些能作为Web开发基础的接口 Struts是Jakarta Apache论坛下的一个开源项目       和所有Jakarta的项目一样 Struts提供原代码和二进制程序的下载 这篇文章里 我们使用Struts的 b 版本 虽然这不是一个正式的版本 但这个版本比起 版有许多重大的改进       首先 解压缩二进制程序到你所指定的目录 会有一个名为jakarta struts b 的目录创建 在它之下有两个子目录 分别为lib和webapps Lib目录包含我们所需要的所有库 DTD文件 TLD文件(标签库定义) 我们需要把它们添加到应用程序的classpath中 Webapps目录包含了许多 war(web程序包)文件 这些可安装运行的war文件可以放到任意servlet容器的webapps目录中 我们使用Tomcat作为servlet容器       模板基础   我们通过模版可以创建很多结构相似的东西 模版帮助我们将会改变的东西归档打包 避免许多重复的工作 这对创建网络应用程序的确是一件很方便的事情       在大多数的网络应用程序中 经常需要更换的是内容 JSP很容易做到这一点 因为JSP默认提供一个include机制—— 标签 因此一个标准页面可以通过改变include文件来改变它的内容 但是我们怎么能如此方便的改变一个页面的布局呢?当我们需要改变的不仅仅是页面的内容 还包括这个页面的布局时情况会怎么样呢?我们等会就会回答这些问题       用Java提供的布局管理机制可以帮我们更形象的理解这些问题 Java提出了布局管理器 组件 容器的概念来创建图形界面的应用程序       当容器中的组件改变时 布局管理器会决定怎么样将新的组件部署到容器中 此外 容器本身也可以做为其他容器的组件从而实现了嵌套 在一些简单的情况下 JSP就可以做为一个网络应用程序的模版 其功能就等价于布局管理器 模版隐藏了web页面布局的实现方法 换句话说 它隐藏了布局的法则 假如布局法则需要改变 那么这些改变将回受限于模版 Web页面通过实现这个模版来做其内容上的改变       如果模版等价于布局管理器 那相应的容器和组件又是什么呢?相应的组件就是实际的内容文件 JSP文件 HTML文件 图象文件等等 容器将这些可见的组件聚集在一个单元里 一个JSP文件就是一个容器 容器需要关于模版的信息来部署这些组件 用Java GUI举例来说 一个面板(容器 集合单元)可以包含按钮和文本区(组件和内容) 使用一个网格布局管理器(GridLayout)来部署这些组件       现在我们可以来回答先前提出的那个问题了 我们知道模版集成了布局法则 当要改变布局是 我们要做的仅仅改变模版 这些改变会一起相关页面布局的改变 而不需要去改变这些页面本身 在门户应用程序中 这就意味着当大量页面需要采用同样布局时在时间上的节省       Struts用三个模版标签来实现模版       插入标签InsertTag——    在容器/集合单元文件(collecting unit file)中使用 它定义了当前容器要使用的模版 类似于Java GUI中的container setLayout(layout)方法 在它之后用 标签定义组件       放入标签PutTag——    在容器/集合单元文件(collecting unit file)中使用 他定义了组成容器/集合单元的组件/内容 它类似于Java GUI中的container add(ponent)方法 每个PutTag标签必须有一个相关组件的名称       获得标签GetTag——    在模版文件中使用 它告诉模版由PutTag标签定义的不同组件的名称 它类似于Java GUI中的layout addLayoutComponent(ponentName ponent)方法       一个简单的例子   你可以下载这个例子 我们将要创建两套内容文件 容器(集合单元)文件以及模版文件 当我们有了这些文件后 就可以就可以互换他们的模版 看到他们在布局上的改变    复制Struts blank war到Tomcat的webapps目录并且将他改名为template example war 重起Tomcat template example会由Tomcat自动部署 删除pages目录和index jsp文件 他们与我们的讨论暂时无关       让我们定义又定义我们自己的内容文件做为一个开始 在template example下建立一个名为content的目录 并且在其中创建六个文件 middle jsp and middle jsp    放入什么文件是取决于你的 但是对于初学者 静态文件更容易理解 举个例子来说 包括以下的内容       This is the TOP Content for the First    example This is a static file       类似的 middle jsp包括如下内容       This is the MIDDLE Content for the First    example This is a dynamic JSP file and the   current date and time is <%= new Date() %>       定义了内容之后 让我们来定义两个模版    在template example下建立名为templates的目录 并在其下创建两个文件template jsp和template jsp    这些模版定义了两种布局方式 如下图所示    >   >   我们如下来定义这两个模版       <%@ taglib uri=\'/WEB-INF/struts-   template.tld\' prefix=\'template\' %>         <template:get name=\'title\'/>                                                      定义 Template    <%@ taglib uri=\'/WEB-INF/struts-   template.tld\' prefix=\'template\' %>         <template:get name=\'title\'/>                                          定义 Template       注意到这两个模版定义了两种布局方式 换句话说 它们定义了两种不同的布局法则    我们已经有了我们自己的内容和模版 现在我们需要的是容器文件 在tomcat example目录下创建两个容器文件分别名为container jsp和container jsp 容器文件需要包含组件(内容) 同样 容器文件利用template insert和put tags标签来逐个定义使用和加入的组件(内容)       让我们带着这些概念看一下其中的一个容器文件(container jsp)       <%@ taglib uri=\'/WEB-INF/struts-template.tld\' prefix=\'template\' %>                        我们可以打开浏览器 输入看看这个文件的实际输出 你会看到如下的页面    >   在这个页面的后面 container jsp使用模版template jsp来定义输出页面的布局并且从不同的组件中包含内容 注意这里属性direct的用法 当direct设置为true时 content标签定义的内容将会被直接调用 它不寻找一个外部的文件 (When direct is set to true the content specified by the content attribute is used directly It is not looked up in an external file 有点疑问 翻的不好)      Container 类似 所不同的只是他使用template 页面输出如下    >   我们到目前位置所做的工作的优点是显而易见的 举例来说 我们可以用template 替换template (通过简单的复制和粘贴用template jsp替换template js ) 之后container jsp会马上变成如下的模样 我们改变了容器的布局却没有碰container !这就是模版的作用    >   Struts Template vs Tiles      从Struts 开始 引入了另一种模 cha138/Article/program/Java/ky/201311/28803

相关参考

知识大全 微信公众号用这种模板做活动,是要用第三方外挂协助还是怎么样

微信公众号用这种模板做活动,是要用第三方外挂协助还是怎么样?求大神解答,线上等!微官网,微投票的模板微信公众号第三方模板,哪个好用,哪个免费编辑器可推荐135和96,比较适合新手使用,直接系结公众号就

知识大全 电脑端淘宝装修模板可以用在手机端吗

电脑端淘宝装修模板可以用在手机端吗用不了的,手机端只能设置简单的广告图片,以及产品分类排序,不过产品详情页,可以在电脑端一键生成,这样在手机端浏览也是一样,不过描述里的产品图片不宜过大,淘宝店电脑端装

知识大全 用Struts框架开发Java应用

用Struts框架开发Java应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Struts开

知识大全 用MyEclipse开发第一个Struts程序

Struts1.x系列教程(1):用MyEclipse开发第一个Struts程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容

知识大全 用 struts 向数据库中储存图片

  这个例子是通过用Struts的FormFile来写入到MySQL中    用用户通过选一个图片然后按submit就可以存入数据库中    其中先要建立一个表:    createtabletest

知识大全 用StrutsTestCase测试Struts应用程序

用StrutsTestCase测试Struts应用程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 用Struts建立MVC应用的介绍

用Struts建立MVC应用的介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  .Model和

知识大全 分享:用Struts上传多个文件的方法

分享:用Struts上传多个文件的方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  最近在做S

知识大全 用ActionForward优化你的Struts应用程序

用ActionForward优化你的Struts应用程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 用ActionMapping构建漂亮的Struts应用程序

用ActionMapping构建漂亮的Struts应用程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一