易截截图软件、单文件、免安装、纯绿色、仅160KB

JSP自定义标签

JSP自定义标签
一,    基本概念:
标签(Tag):标签是一种XML元素,通过标签可以使JSP网页变得简洁易于维护,还可以方便地实现同一个JSP文件支持多种语言版本。由于标签是XML元素,所以它的名称和属性都是大小写敏感的。
标签库(Tag library):由一系列功能相似,逻辑上互相联系的标签构成的集合称为标签库。
标签库描述文件(Tag Library Desriptor)
标签库描述文件是一个XML文件,这个文件提供了标签库中类和JSP中对标签引用的映射关系。它是一个配置文件,和web.xml是类似的。
标签处理类(Tag Handle Class)
标签处理类是一个Java类,这个类继承了TagSupport或着扩展了SimpleTag接口,通过这个接口可以实现自定义标签的具体功能。
两种标签: 可以自定义两种类型的标签:
javax.servlet.jsp.tagext.Tag
javax.servlet.jsp.tagext.BodyTag
有标签体的标签必须实现BodyTag接口
无标签体的简单标签可以实现Tag接口
 
JspTag
SimpleTag
Tag
IterationTag
SimpleTagSupport
TagSupport
BodyTag
BodyTagSupport
 
 
 
 
 
 
 
 
二、自定义JSP标签的格式:
1.<% @ taglib prefix=”someprefix” uri=”/sometaglib”>
为了使到JSP容器能够使用标签库中的自定义行为,必须满足以下两个条件:
1)    从一个指定的标签库中识别出代表这种自定义行为的标签
2)    找到实现这些自定义行为的具体类
第一个必需条件-找出自定义行为属于那个标签库-是由标签指令的前缀(Taglib Directive’s Prefix),用在标签库的文档中或者页面中插入自定义标签。所以你可以使用除了诸如jsp, jspx, java servlet
sum, sunw(它们都是在JSP白皮书中指定的保留字)之类的前缀。
uri属性满足了以上第二个要求,为每个自定义行为找到对应的类。这个uri包含了一个字符串,容器用它来定位TLD文件文件,在TLD文件中可以找到标签库中所有标签处理类的位置
当web使用程序启动时,容器从WEB-INF文件夹的目录结构的META-INF搜索所有以.tld结尾的文件。也即使说它们会定位所有的TLD文件,对于每个TLD文件,容器会先获取标签库的URI,然后为每个TLD文件和对应的URI创建映射关系。
三、自定义JSP标签的处理过程
1. 在JSP中引入标签库:
<%@  taglib prefix=” taglibpfex”  uri=”tagliburi&rdq


相关文档:

搜狗双核的JSP session问题

搜狗双核浏览器出来之后,我就用它来调试页面,按一个按钮可以切换两种浏览器以观察网页效果,还是比较方便的,但是最近发现搜狗的JSP session貌似出现问题。还在测试中,最近一两天会写出一个比较详细的测试报告。哎,难道是我的session写的有问题?怎么在网上搜不到类似的东西... ......

关于复选框的验证与jsp取值(转载)

表单如下:
<form name="form1" action="test.jsp" method="post" onsubmit="return checkData();">
   <input name="checkall1" type="checkbox" value="0" onClick="checkAllBox(this);"/>全选<br>
   <input name="answer" type="checkbox" value="a"/>A<b ......

JSP中定时关闭页面的JS控件


JS代码
<script
type="text/javascript">
function closewindow(){
 window.returnValue = true;
 window.close();
}
function clock(){
 i = i -1;
 if(document.getElementById("info")){
  document.getElementById("info").innerHTML
......

JSP iterator


JSP中结果集显示如下:
    
<
ww:iterator
 
value
=
"resultList"
 
status
=
"status"
>
    
<
tr
 
class
=
"<ww:if test="
#status.even"
>
row-even
</
ww:if
> ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号