• (三十)JSP标签之自定义标签


    • 创建一个类,引入外部jsp-api.jar包(在tomcat 下lib包里有),这个类继承SimpleTagSupport
    • 重写doTag()方法。
    jspprojec包下的helloTag类:
     1 public class helloTag extends SimpleTagSupport{
     2 
     3     @Override
     4     public void doTag() throws JspException, IOException {
     5 
     6         
     7         JspWriter out=this.getJspContext().getOut();
     8         out.print("你好我是自定义标签");
     9     }
    10 
    11 }
    • 定义配置文件,这个文件放在webContent目录下的tags包里,文件扩展名为.tld 。
    <taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
        version="2.1">

      <tlib-version>1.2</tlib-version>
      <short-name>my</short-name>
      <uri>my/jsp/jstl/my_hi</uri>

      <tag>
        <name>hi</name> //标签名
        <tag-class>jspprojec.helloTag</tag-class> //自定义标签类
       <body-content>empty</body-content>

      </tag>
    </taglib>
    • 在jsp中使用自定义标签:
     1 <%@page import="java.util.ArrayList,java.util.ArrayList,jspprojec.Student"%>
     2 <%@ page language="java" contentType="text/html; charset=UTF-8"
     3     pageEncoding="UTF-8"%>
     4 <%@ taglib prefix="my" uri="tags/my.tld" %>
     5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     6 <html>
     7 <head>
     8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     9 <title>Insert title here</title>
    10 </head>
    11 <body>
    12 
    13 <my:hi/>
    14 
    15 </body>
    16 </html>

    结果:

  • 相关阅读:
    在程序中向水晶报表传参数,以及在程序中指定报表源
    运行Web程序时提示无法使用调试
    TreeView控件节点重命名后没有进入beginEdit的解决方案
    网络负载平衡(转)
    纵横表转交叉表
    重绘datagrid,包括强迫显示某行
    datagrid添加事件
    我的页面模板算法
    C++函数重载
    关于string.empty 与 "" 内存分配
  • 原文地址:https://www.cnblogs.com/shyroke/p/6530168.html
Copyright © 2020-2023  润新知