1.java代码如下:.
package com.eduask.tag;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.SimpleTagSupport;
//属性值的测试;
public class For2 extends SimpleTagSupport{
private int count;
public void setCount(int count){
this.count=count;
}
@Override
public void doTag() throws JspException, IOException {
PageContext ctx=(PageContext) getJspContext();
for (int i = 0; i < count; i++) {
getJspBody().invoke(null);
}
}
}
2.user.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">
<description>JSTL 1.1 core library</description>
<display-name>JSTL core</display-name>
<tlib-version>1.1</tlib-version>
<short-name>u</short-name>
<uri>http://java.sun.com/jsp/jstl/mytld</uri>
<tag>
<!--标签的名字 -->
<name>ip</name>
<!--自定义标签类 -->
<tag-class>com.eduask.tag.Ip</tag-class>
<!-- 内容为空 -->
<body-content>empty</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>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>-->
</tag>
<tag>
<name>for1</name>
<tag-class>com.eduask.tag.For1</tag-class>
<!-- 标签内容不允许出现java脚本 -->
<body-content>scriptless</body-content>
</tag>
<tag>
<name>for2</name>
<tag-class>com.eduask.tag.For2</tag-class>
<body-content>scriptless</body-content>
<!-- 设置标签属性 -->
<attribute>
<!-- 属性的名称 -->
<name>count</name>
<!-- 必须填写 -->
<required>true</required>
<!-- 运行时表达式 -->
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
- for2.jsp代码如下:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib prefix="u" uri="http://java.sun.com/jsp/jstl/mytld" %>
<!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>
<%
String data="this is for2";
request.setAttribute("data", data);
int a=10;
request.setAttribute("a", a);
%>
<u:for2 count="${a}">
${data} <br>
</u:for2>
</body>
</html>
4.程序如下:显示10条: this is for2