zoukankan      html  css  js  c++  java
  • java jsp自定义标签

    自定义标签开发步骤

                                1)编写一个普通的java类,继承SimpleTagSupport类,叫标签处理器类

    package gz.itcast;
    
    import java.io.IOException;
    
    import javax.servlet.jsp.JspException;
    import javax.servlet.jsp.tagext.SimpleTagSupport;
    
    public class iftag extends SimpleTagSupport {
    
    private  boolean  test;
    
    public void setTest(boolean test) {
        this.test = test;
    }
    
    public void doTag() throws JspException, IOException {
        // TODO Auto-generated method stub
        if(test){
     this.getJspBody() .invoke(null);
        }
    }
    }

             2)在web项目的WEB-INF目录下建立itcast.tld文件,这个tld叫标签库的声明文件。(参考核心标签库的tld文件)

    <?xml version="1.0" encoding="UTF-8" ?>
    
    <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.1</tlib-version>
    <short-name>itcast</short-name>
    <uri>http://gz.itcast.cn</uri>
    
    <tag>
    
    <name>if</name>
    <tag-class>gz.itcast.iftag</tag-class>
    <body-content>scriptless</body-content>
    <attribute>
    <name>test</name>
    <required>true</required>
    <rtexprvalue>true</rtexprvalue>
    </attribute>
    </tag>
    </taglib>

                       3) 在jsp页面的头部导入自定义标签库

                                             <%@taglib uri="http://gz.itcast.cn" prefix="itcast"%>

                       4) 在jsp中使用自定义标签

                                        

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <%@taglib uri="http://gz.itcast.cn" prefix="itcast" %>
    
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
    
      </head>
      
      <body>
       <itcast:if test="${10>5}">条件成立</itcast:if>
      </body>
    </html>
  • 相关阅读:
    Golang之排序算法
    Golang之一个简单的聊天机器人
    golang之流程控制(注意点)
    golang之指针
    vs code中自动添加注释插件koroFileHeader
    stack栈、heap堆的说明图
    c语言中的数据类型的最大最小值
    数组问题:a与&a有的区别
    STM32F10x之NVIC
    大小端的另一种测试方法
  • 原文地址:https://www.cnblogs.com/yimian/p/7107435.html
Copyright © 2011-2022 走看看