Struts--HTML标签库(-)(转)
by Budi Kurniawan
为了更容易、更快速地进行开发,Struts提供了功能同其它JSP标签库类似的五个标签库,即:HTML、Bean、Logic、Template和Nested。。第一部分讲述如何配置一个Struts应用程序来运用这个标签库,并介绍了第一组标签;第二部分讲述了第二组标签;
HTML标签库主要用来显示HTML元素,如果不用这种方法,你就必须用HTML标签来指定它们。从表面上看,这个标签库很简单。但是通过深入研究,我们就会发现它很强大。例如,它可以为我们在HTML表单的一个特定输入元素中放置重点内容生成JavaScript,或为客户端输入验证生成脚本。而且,你可以用它通过一行代码来处理错误。然而,在将这个标签库用于你的Struts应用程序前,你需要做些简单的准备工作。
配置应用程序来运用标签库
在运用Struts HTML标签库前,你需要通过三个步骤来配置一个Struts应用程序。
1. 在部署描述符(web.xml文件)中注册标签库:
<taglib> <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri> <taglib-location>/WEB-INF/struts-html.tld</taglib-location> </taglib> |
2. 确信将struts-html.tld文件复制到WEB-INF目录中。你不用担心标签库类文件,因为它们已经包含在struts.jar文件中了。
3. 在运用标签库的每个JSP页面中,插入下面的<taglib>指示符:
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> |
另外,你也可以运用struts-html.tld文件来学习它所支持的标签以及每个标签可以带有哪些属性。
运用一个自定义的标签库通常是很容易的:只要遵循前面讲述的步骤就行了。然而,有些标签库包含一些原则,这些原则使我们在运用这些标签库时并不那么容易。Struts HTML标签库就是其中之一。有些标签很简单、很容易使用;然而,另外有些标签则取决于Struts应用程序中的其它标签或其它元素。
我将HTML标签库中的标签大致分成了两类:简单、容易使用的标签,我把它们称为“独立的标签”,第二类是必须通过一个form标签来使用的标签。我把第二类的标签简单地称为与form相关的标签。本文主要讲述独立的标签,在本系列文章的第二部分我将讲述与form相关的标签。
HTML标签库包含几个很容易使用的独立的标签。下面讲述几个比较重要的标签。
<html>标签
<html>标签是HTML标签库中最容易的标签。它有两个属性:locale和xhtml,两者都不是必需的。下面的代码选自一个运用<html>标签的JSP页面:
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <html:html locale="true"> <head> <title>Welcome</title> </head> <body> Hello World! </body> </html:html> |
注意,我们没有用标准的<html>元素,而是用了<html:html>标签。其中第一个html指的是前缀,第二个是<html>标签本身。而且我们也用了locale属性。JSP页面将显示成:
<html lang="en"> <head> <title>Welcome</title> </head> <body> Hello World! </body> </html> |
注意,<html:html locale=“true”>中的locale属性在生成的HTML页面中被转换成了lang=“en”。生成的结果取决于Struts应用程序所位于的服务器的locale。如果你将应用程序部署到一个不同locale的服务器,你不需要改变代码。Locale会自动调整。
<base>标签
<base>标签显示一个HTML元素,用一个href属性表示所包含的JSP页面的绝对位置。只有当这个标签是内嵌在一个head标签部分时,它才有效。例如这个JSP页面:
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> <html:html locale="true"> <head> <title>Welcome</title> <html:base/> </head> <body> Hello World! </body> </html:html> |
会转换成以下形式:
<html lang="en"> <head> <title>Welcome</title> <base href="http://www.domain.com/myStrutsApp/testing.jsp"> </head> <body> Hello World! </body> </html> |
<img>标签
<img>标签用来生成一个HTML <IMG>标签。它最重要的属性有:
· page:图象文件相对于模块的路径;前面必须带有一个斜线。 |
· height:图象的高度。 |
· width:图象的宽度。 |
· alt:如果找不到图象,显示的文本。 |
例如:
<html:img page="/logo.gif" height="50" width="200" alt="Company Logo"/> |
<img src="/myStrutsApp/logo.gif" height="50" width="200" alt="Company Logo"> |
<link>标签
<link>标签会生成一个超链接。例如标签:
<html:link page="/index.html">Click here</html:link> |
<a href="/myStrutsApp6/index.html">Click here</a> |
<errors>标签
<errors>标签的易于使用性通常会掩盖其真正的强大功能。通过一个简单的<html:errors/>标签,你就可以在一个JSP页面上显示完全自定义的错误信息。
这个标签检查Request对象的属性集合来查找一个reserved key。如果它找到一个reserved key,它就假设这个key是一个String、或是一个String数组(它包含在模块的MessageResources中查找的message keys)、或是类型为org.apache.struts.action.ActionErrors的一个对象。
如果在应用程序资源中存在相应的信息,那么就可以用下面这些可选的message keys:
· errors.header:相应的信息在错误信息的单独列表前显示。 |
· errors.footer:相应的信息在错误信息的单独列表后显示。 |
· errors.prefix:相应的信息在错误信息的单独列表前显示。 |
· errors.suffix:相应的信息在错误信息的单独列表后显示。 |
Struts HTML标签库会使开发更容易、更快速。为了有效地运用这个标签库,你需要对标签库中的标签很熟悉。在本系列文章的第一部分中,你学习了如何配置一个Struts应用程序来运用标签库,并对独立的标签有了总体的了解。在第二部分中,你将学习与form相关的标签;
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dgrt.cn/a/430968.html
如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!相关文章:

Struts--HTML标签库(-)(转)
Struts提供了一个强大的HTML标签库来帮助你构建Web应用程序。 by Budi Kurniawan 为了更容易、更快速地进行开发,Struts提供了功能同其它JSP标签库类似的五个标签库,即:HTML、Bean、Logic、Template和Nested。。第一部分讲述如何配置一个S…...

Struts提供的和Form相关的标签(转)
继续学习Struts提供的HTML标签库。 by Budi Kurniawan 在本文系列的第一部分中我讲述了如何使用Struts提供的HTML标签库来配置一个Struts应用程序。我还介绍了该标签库中的一类标签:独立使用的标签。在第二部分中我将继续介绍第二类标签:与form相关的标…...

struts中文问题,struts国际化问题的终极解决方案(转)
Java本身就支持多国语言编码,不需要写任何程序,可以很简单的 实现。 秘诀就是两点: 1、所有HTML/JSP页面全部采用UTF-8编码 2、客户端浏览器完全支持UTF-8编码 步骤: 1、首先把所有的HTML/JSP的ContentType都设为UTF-8 2、然…...

屏蔽tomcat的目录列表功能
<script typetext/javascript></script> <script src"http://pagead2.googlesyndication.com/pagead/show_ads.js" typetext/javascript> </script> 缺省情况下,如果你访问tomcat下的一个web应用,那么如果你输入的是一…...

Java文件操作大全-
文件的建立/检查与删除 <% page contentType"text/html;charsetgb2312"%><% page import"java.io.*"%><html><head><title>文件的建立、检查与删除</title></head><body><%String pathrequest.getReal…...

[DiceCTF 2023] rSabin
一点点学习别人的WP,这回看到一个大姥(r3kapig)的帖子,DiceCTF第二名,不过有好多东西一时还理解不了,得慢慢来。题目这个题有3个功能:rsa加密功能,p,q,N未知,e17低加密指数解密,不过…...

学习J2ME编程需要掌握的七种技术
学习J2ME编程需要掌握的七种技术 J2ME编程是Java在智能家电领域的应用,主要包含以下技术: 1、 高级用户界面 高级用户界面是指J2ME编程中用到的Form(窗体)、TextBox(文本框)、List(列表框)和Alert(提示信息框)等的使用,以及其中的一些控件的…...

程序员转型:条条大道通罗马 (转)
有几年没有找过工作了,做程序员也做了四个年头了,我觉我应该考虑一下我自己的新的发展方向了,做为一个在传统企业里的IT部门工作的技术人员,我个人觉的,在企业里做技术的路非常窄,而且就是在技术方面也不具…...

程序员,回头是岸(转)
今有同仁问到,三十以后啥过。恰巧心情郁闷,发上几句牢骚。 一人编程在外,起初觉得挺酷。如今回头一看,寂寞凄惨无助。 自小练文习武,觉得是个人物。没想老大不小,仍然没人光顾。 少年暗恋对象,早…...

年轻没有失败,看驴生豪迈,不过重头再来
从前哪,有一头老驴,一天它不小心掉到了一个废弃的陷阱里,很深,根本爬不上来,主人看他是老驴,懒得去救他了,让他在那里自生自灭。那头驴一开始也放弃了求生地希望。 每天还不断地有人往陷阱里面倒垃圾,按理说…...

贪吃蛇游戏代码(javascript编写)
<html> <head> <title>简单贪吃蛇</title> <style type"text/css"> <!-- .food{background-color:green} .snake{background-color:red} --> </style></head><body onLoad"javascript:cr…...

php5.2+apache2.8+mysql5+phpmyadmin2.9安装及配置
先准备好软件: 一、安装Apache,配置成功一个普通网站服务器 运行下载好的“apache_2.0.55-win32-x86-no_ssl.msi”,出现如下界面: 出现Apache HTTP Server 2.0.55的安装向导界面,点“Next”继续 确认同意…...

IEEE 754 浮点数的表示精度探讨
前言 从网上看到不少程序员对浮点数精度问题有很多疑问,在论坛上发贴询问,很多热心人给予了解答,但我发现一些解答中有些许小的错误和认识不当之处。我曾经做过数值算法程序,虽然基本可用,但是被浮点数精度问题所困扰…...

4n+3的形式的质数有无穷多个
证明:假设只有有限多个 4n3 型的质数, 它们分别是 P(1), P(2), ..., P(k). 令 QP(1)^2P(2)^2...P(k)^22, 首先, P(1)^2, P(2)^2 等等都是 4n1 型的数,所以 Q 是 4n3 型的数。 Q 只能有 4n1 型和 4n3 型的素因数,而且至…...

多事之秋
诗人:姜力维 秋天 一个复杂的季节 万般情感 化作跨越时空的吟诵 敲击着 古今中外 敏感脆弱你我的心灵 秋 真的是黄色的么 金灿灿 沉甸甸 诱人的欲望横流 可南国我的眼前 却满眼翠绿 秋 真的是浪漫的么 轻飘飘 明晃晃 激越的情感涌动 我目及耳闻的…...

php 做图类
<?php //把角度转换为弧度 function deg2Arc($degrees) {return ($degrees * (pi () / 180.0)); }//获取RGB function getRGB($color) {$R ($color >> 16) & 0xff;$G ($color >> 8) & 0xff;$B ($color) & 0xff;return (array ($R, $G, $B )); }…...

我的jpgraph使用实例
<?phpinclude ("jpgraph/jpgraph.php"); include ("jpgraph/jpgraph_bar.php"); include_once ("jpgraph/jpgraph_pie.php");include_once ("jpgraph/jpgraph_pie3d.php"); //$title 图片标题//$dataArray array(数据1&#x…...

实用的JS代码技术
事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode event.shiftKey event.altKey event.ctrlKey 事件返回值 event.returnValue 鼠标位置 eve…...

JpGraph入门(jpgraph-2.2)
JpGraph入门, 官方网站:http://www.aditus.nu/jpgraph/ 在线手册http://doc.async.com.br/jpgraph/html/ 本文是我从其它人的例子其手册上综合写上来的,针对版本为jpgraph-2.2 根据手册上的步骤 第一:配置 ######################…...

删除grub恢复windows操作系统的启动
Linux的grub是一个非常好的引导程序,它可以引导多操作系统。当windows和linux共存时有时候我们想删除 grub,重新启用单一的windows该如何操作呢,本文会给答案的。 由于windows 2000、windows XP、windows 2003的启动机制与vista 的启动管理器有明显的差…...