zoukankan      html  css  js  c++  java
  • jsp2自定义标签开篇

    在JSP2中开发标签库需要以下几个步骤:

    1.开发自定义标签处理类;

    2.建立一个*.tld文件,每个*.tld文件对应一个标签库,每个标签库可包含多个标签;

    3.在JSP文件中使用自定义标签。

    第一步骤:开发自定义标签类。标签类需要继承javax.servlet.jsp.SimpleTagSupport;如果标签类包含属性,每个属性都要有getter和setter方法;

    重写doTag()方法,这个方法负责生成页码内容。

    比如以下代码:

     1 package lee;
     2 import java.io.IOException;
     3 import javax.servlet.jsp.JspException;
     4 import javax.servlet.jsp.tagext.SimpleTagSupport;
     5 public class HelloTag extends SimpleTagSupport {
     6     // 重写doTag方法
     7     @Override
     8     public void doTag() throws JspException, IOException {
     9         // 获取页面输出流,并输出字符串
    10         getJspContext().getOut().write("hello Tag"+new java.util.Date());        
    11     }
    12 }

    第二步骤:简历TLD文件,可以直接复制tomcat的webappsexamplesWEB-INFjsp2下的jsp2-example-taglib.tld文件放到自己的WEB-INF目录下。如图

    然后重命名,修改内容,代码如下:

     1 <?xml version="1.0" encoding="GBK" ?>
     2 <taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     3     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
     4     version="2.0">
     5     <!-- 描述 -->
     6     <description>A tag library exercising SimpleTag handlers.</description>
     7     <!-- 版本 -->
     8     <tlib-version>1.0</tlib-version>
     9     <!-- 短名 -->
    10     <short-name>mytag</short-name>
    11     <!-- 指定标签库URI -->
    12     <uri>http://tomcat.apache.org/mytag</uri>
    13     <tag>
    14         <description>Outputs Hello, World</description>
    15         <!-- 标签库名字 -->
    16         <name>helloWorld</name>
    17         <!-- 标签处理类 -->
    18         <tag-class>lee.HelloTag</tag-class>
    19         <!-- 标签体内容 -->
    20         <body-content>empty</body-content>
    21     </tag>
    22 </taglib>

    第三步骤:使用自定义标签,新建一个jsp文件,代码如下:

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <%@ taglib uri="http://tomcat.apache.org/mytag" prefix="mytag"%>
     4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     5 <html>
     6 <head>
     7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     8 <title>Insert title here</title>
     9 </head>
    10 <body>
    11     <mytag:helloWorld />
    12 </body>
    13 </html>
  • 相关阅读:
    堆排序(Heap Sort)
    快速排序(Quick Sort)
    希尔排序(Shell Sort)
    C和C++中的可变参数及宏的使用
    函数中的参数问题小结(&,*,传参与变参)
    C语言基础之struct
    C语言基础之指针
    从名字开始讲——C与C++的编译细节
    二维数组的动态初始化与复制
    《Java程序设计》第二次学习总结
  • 原文地址:https://www.cnblogs.com/luoxiaozhao/p/6964151.html
Copyright © 2011-2022 走看看