首页 > 代码库 > 简单实用jstl实现代码编写

简单实用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>

实现效果如下:

技术分享

 

简单实用jstl实现代码编写