java之动态标签



java之动态标

               在java开发过程中,自定义标签相当的富有乐趣,下面为大家带来一个简单的动态标签创建实例:

             1、创建标签处理类:关键词(继承 SimpleTagSupport 和实现 DynamicAttributes 接口)

 import java.io.IOException;

import javax.servlet.jsp.tagext.*;
import javax.servlet.jsp.*;

import java.io.*;
import java.util.*;

 public class DynamicAttr extends SimpleTagSupport implements DynamicAttributes
 {
  //保存每个属性名的集合
  private ArrayList keys= new ArrayList();
  //保存每个属性名的值得集合
  private ArrayList values=new ArrayList();
  //重新doTag方法
  public void doTag() throws JspException, IOException
  {
   JspWriter out= getJspContext().getOut();
   
   out.println("
    ");
       for (int i=0;i    {
        String key = keys.get(i);
        Object value=values.get(i);
        out.println("
  1. "+key+"="+value+"
  2. ");
       }
       out.println("
");
  }
  
 @Override//实现接口方法
 public void setDynamicAttribute(String uri, String localname, Object value)
   throws JspException {
  // TODO Auto-generated method stub
  //添加属性名
  keys.add(localname);
  //添加属性值
  values.add(value);
  } 
 }

2、创建动态标签处理类以后,就需要修改标签配置文件.tld啦,如下

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
    version="2.0">
    A tag library exercising SimpleTag handlers.
    1.0
    mytaglib
    /mytaglib 
    
   
   
     dynaAttr
     lee.DynamicAttr
     empty
     true
   
   

3、实现使用动态标签 注:首先在jsp页面要先导入标签库(<%@ taglib uri="/mytaglib" prefix="mytag"%>):uri:是你上面标签配置项的链接,prefix:是你使用标签的前缀

下面显示的是自定义标签中的内容


指定两个属性




指定四个属性


4、完成以上3步,自定义动态标签就完成啦。大家试试看吧


你可能感兴趣的:(Java系统学习过程)