一般来说,自定义标签的开发包含下面四个步骤:
1,编写完成标签功能的java类;
2,编写标签库描述符(tld)文件,在tld文件中对自定义标签进行描述。
3,在web应用中部署和安装自定义标签库。
4,在jsp页面中导入和使用自定义标签。
下面是一个简单的例子:
标签处理器类:
package com.bs.tag;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
public class viewIPTag extends TagSupport {
public int doStartTag() throws JspException {
String IP=pageContext.getRequest().getRemoteAddr();
try{
pageContext.getOut().write(IP);
}catch(Exception e){
e.printStackTrace();
}
return super.doStartTag();
}
}
tld文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<taglib>
<tlibversion>1.2</tlibversion>
<jspversion>1.1</jspversion>
<shortname>it315</shortname>
<uri>/taglib</uri>
<tag>
<name>ip</name>
<tagclass>com.bs.tag.viewIPTag</tagclass>
<bodycontent>empty</bodycontent>
</tag>
</taglib>
jsp页面中使用自定义标签:
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib prefix="it315" uri="/taglib" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
您的ip:<it315:ip/> <br/>
<%out.write("adsfadfs"); %><br/>
</body>
</html>