zoukankan      html  css  js  c++  java
  • 简单实用jstl实现代码编写

    package com.ceshi;
    
    import java.io.IOException;
    
    import javax.servlet.jsp.JspException;
    import javax.servlet.jsp.tagext.*;
    
    public class TestTag extends SimpleTagSupport {
        private String outerTagName="p";
        public String getOuterTagName() {
            return outerTagName;
        }
        public void setOuterTagName(String outerTagName) {
            
            this.outerTagName = outerTagName;
        }
        private int count;
        
        public int getCount() {
            return count;
        }
        public void setCount(int count) {
            this.count = count;
        }
        @Override
        public void doTag() throws JspException, IOException {
            JspFragment jsp=this.getJspBody();
            this.getJspContext().getOut().write("<"+outerTagName+">");
            for(int i=0; i<count;i++){
                jsp.invoke(null);
            }
            this.getJspContext().getOut().write("</"+outerTagName+">");
            
        }
    }
    <?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">
        
      <description>JSTL 1.1 core library</description>
      <display-name>JSTL core</display-name>
      <tlib-version>1.1</tlib-version>
      <short-name>m</short-name>
      <uri>http://www.baidu.com/myjstl</uri>
      
       <tag>
        <description>
            
        </description>
        <name>show</name>
        <tag-class>com.ceshi.TestTag</tag-class>
        <body-content>scriptless</body-content>
        <attribute>
            <description>
    Name of the exported scoped variable for the
    exception thrown from a nested action. The type of the
    scoped variable is the type of the exception thrown.
            </description>
            <name>outerTagName</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
        </attribute>
         <attribute>
            <description>
    Name of the exported scoped variable for the
    exception thrown from a nested action. The type of the
    scoped variable is the type of the exception thrown.
            </description>
            <name>count</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
        </attribute>
      </tag>
      <tag>
        
        
      </tag>
    </taglib>
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <%@taglib prefix="m" uri="http://www.baidu.com/myjstl" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    <m:show outerTagName="h4" count="2">
    hahahha<br>
    </m:show>
    </body>
    </html>

    实现效果如下:

  • 相关阅读:
    文件上传及文件大小限制_学习笔记
    Java后台及Jsp前端的简单分页_学习笔记
    Java过滤器Filter的原理及配置_学习笔记
    Jsp入门EL表达式_学习笔记
    关于forName()、newInstance()、getMethod()、getClass()等区别的简略说明
    SQL语句查询某字段不同数据的个数(DISTINCT 的使用)
    C# 中delegate和event的区别
    java面试题(转)
    Servlet中的几个重要的对象(转)
    Spring 注解注入的几种方式(转)
  • 原文地址:https://www.cnblogs.com/claricre/p/6395743.html
Copyright © 2011-2022 走看看