Jsp2.0新增标签制作方法-TagFile

现在制作自定义标签有以下几种方式,一个是继承TagSupport或者TagBodySupport

JSP2.0中新增了继承SimpleTag,还有一种方式,就是使用TagFile,这也是JSP2.0中特有的制作自定义标签的方式

这是Tag File

功能很简单,就是动态参数相加,如果大于1000就执行大于1000的代码(采用红色显示),反之则使用红色显示

 

<% ... @ tag pageEncoding="GB2312"  %>
<% ... @ tag dynamic-attributes="numColumn"  %>
<% ... @ attribute name="great" fragment="true"  %>
<% ... @ attribute name="less" fragment="true"  %>
<% ... @ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"  %>
<% ... @ variable name-given="sum" variable-class="java.lang.Object"  %>




< c:if  test ="${not empty numColumn}" >
< c:forEach  items ="${numColumn}"  var ="num" >
    
< c:set  var ="sum"  value ="${num.value + sum}"   />
  
</ c:forEach >
  
< c:if  test ="${sum >= 1000}"   >
      
< jsp:invoke  fragment ="great"   />
  
</ c:if >
  
< c:if  test ="${sum < 1000}"   >
      
< jsp:invoke  fragment ="less"   />
  
</ c:if >   
</ c:if >



 JSP

 

<% ... @ page contentType="text/html;charset=GB2312"  %>
<% ... @ taglib prefix="JSPBook" tagdir="/WEB-INF/tags/"  %>
<% ... @ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"  %>

< html >
< head >
  
< title > CH16 - DynAdd.jsp </ title >
</ head >
< body >

< h2 > Tag File 范例 </ h2 >

< JSPBook:add  num1 ="100"  num2 ="2002"  num3 ="303"   >
    
    
< jsp:attribute  name ="great" >
        
< font  color ="red" > SUM:${sum} ... </ red >
    
</ jsp:attribute >
    
< jsp:attribute  name ="less" >
        
< font  color ="blue" > SUM:${sum} ... </ red >
    
</ jsp:attribute >
</ JSPBook:add >

</ body >
</ html >


你可能感兴趣的:(C++,c,jsp,C#,sun)