• 自定义JSP标签


    目标:创建一个自定义JSP标签,使用该标签可以控制其标签体的显示与不显示。

    1)  新建web项目

    2)  新建一个处理标签的java类

     1 package com.skyer;
     2 
     3 import java.io.StringWriter;
     4 
     5 import javax.servlet.jsp.JspException;
     6 import javax.servlet.jsp.tagext.Tag;
     7 import javax.servlet.jsp.tagext.TagSupport;
     8 
     9 public class MyTag extends TagSupport {
    10 
    11     private static final long serialVersionUID = 1L;
    12 
    13     private String display;
    14 
    15     @Override
    16     public int doStartTag() throws JspException {
    17         if ("1".equals(display)) { // 1的时候显示
    18             return Tag.EVAL_BODY_INCLUDE;
    19         } else if ("0".equals(display)) { // 0的时候不显示
    20             return Tag.SKIP_BODY;
    21         } else { // 其他的都不显示
    22             return Tag.SKIP_BODY;
    23         }
    24     }
    25 
    26     public void setDisplay(String display) {
    27         this.display = display;
    28     }
    29 
    30 }

    3)  在WEB-INF目录下新建MyTag.tld文件

     1 <?xml version="1.0" encoding="UTF-8"?>     
     2 <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
     3 <taglib>
     4     <tlib-version>1.0</tlib-version>
     5     <jsp-version>2.0</jsp-version>
     6     <short-name>my</short-name>
     7     
     8     <tag>
     9         <name>MyTag</name>
    10         <tag-class>com.skyer.MyTag</tag-class>
    11         <body-content>jsp</body-content>
    12         <attribute>
    13             <name>display</name>
    14             <required>true</required>
    15         </attribute>
    16     </tag>
    17     
    18 </taglib>

    4)  在index.jsp文件中引入自定义的标签

    1 <%@ taglib uri="/WEB-INF/MyTag.tld" prefix="my" %>

    5)  使用该标签

    1 <my:MyTag display="1">
    2   <font color="red">Hello Tag!</font>
    3 </my:MyTag>

    6)  测试

  • 相关阅读:
    Mysql如何修改unique key
    centos 编译 安装 protobuf
    EasyNetQ简单使用
    微信发送模板消息
    Python删除开头空格
    代码积累-Common
    sql With(NoLock),With(ReadPast)
    webform 使用log4net配置
    log4net.dll添加报错
    js-小数计算问题
  • 原文地址:https://www.cnblogs.com/Oven5217/p/7081669.html
Copyright © 2020-2023  润新知