您的位置:首页 > Web前端 > JavaScript

JSP学习笔记之三

2011-10-29 16:12 120 查看
Tag文件和Tag标记
1 Tag文件

Tag文件是后缀为.tag的文本文件,其结构几乎和JSP相同。可以用有普通的HTML标记、某些特殊标记,成员变量和方法的声明、Java程序片和Java表达式。

可以利用Tag文件进行一些处理,从而实现代码的复用。

1.1 如何调用

如果想在某个WEB服务目录下访问tag文件,那么需要再改web服务目录下建立:WEB服务目录\WEB-INF\tags,然后把tag文件放在tags目录中。这个可以参考webapps/examples中的目录结构。

调用原理:JSP引擎第一次调用该Tag文件的时候,首先转译为字节码,其后的调用可以复用该字节码,但是如果Tag文件有变,那么JSP引擎会对其进行重新转译,这个过程是自动的,不需要重新启动Apache。

如何调用:①声明:在调用Tag的JSP中通过<%@taglib tagdir=”自定义标记库” prefix=”前缀”%>进行声明 例如:<%@taglib tagdir=”/WEB-INF/tags” prefix=”beiing”%>;②调用:<前缀:tag文件名/>例如<Beijing:Addsum/>或者<Tag文件名> 标记体<Tag文件名/>

2 Tag中常用指令

2.1 tag指令

Tag文件通过tag指令进行属性设定。语法:

<%tag 属性1=”属性值” 属性2=”属性值” …%>

body-content属性:决定是否有标记体。值有:empty(调用时无标记体)/tagdependent(可有可无;如果有,按文本处理)/scriptless(可有可无&&如果有,则标记体中无Java程序片);默认为scriptless.

language属性:只能java

import属性:为Tag文件引入java核心包中的类

pageEncoding属性:Tag文件字符编码,默认为iso-8850-1.

2.2 attribute

JSP页面向Tag文件调用时传递数据。格式:

<%@ attribute name=”对象名称” required=”true”|”false” type=”对象类型”%>

说明:在Tag文件中定义好JSP传来的参数。

在JSP进行参数的传递:方式1:<前缀:Tag文件名 对象名=”对象引用”/>

方式2:<前缀:Tag文件名 对象名=”..”>标记体<…>

2.3 variable指令

通过variable指令,Tag文件将某些数据返回给JSP页面。

指令格式:

<%@variable name-given=”对象名称” variable-class=”对象类型” scope=”有效范围”%>

如何用:①在Tag中调用jspCpontext.setArribute(“对象名”,对象)存储到tomcat的内置对象中②在Tag中定义variable语句。③只有JSP页面调用Tag之后,才能使用返回的对象。

练手:

1.字体显示

JSP文件

<%@page contentType="text/html; charset=GB2312" %>
<%@taglib tagdir="/WEB-INF/tags" prefix="beijing" %>
<HTML><BODY bgcolor="cyan">
<FONT Size=4>
<h3>一下是调用tag文件的效果:</h3>
<beijing:AddSum/>
</FONT></BODY></HTML>
相应的Tag文件:AddSum.tag

<%@ tag pageEncoding="GB2312" %>
<P>这是一个Tab文件,负责计算在1~100内的奇数之和
<%
int sum=0,i=1;
for(i=1;i<=100;i++){
if(i%2==0)
sum=sum+i;
}
out.println(sum);
%>



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: