foreachtag.java

来自「21天精通Java,这是一本英文书」· Java 代码 · 共 52 行

JAVA
52
字号
package web;

import java.io.*;
import java.util.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;

public class ForEachTag extends BodyTagSupport {
	private Collection collection;
	private Iterator it;
	private String currentValue;

	public void setCollection (Collection collection) {
		this.collection = collection;
	}

	public Collection getCollection () {
		return collection;
	}

	public int doStartTag() {
		it = collection.iterator();
		return getNext();
	 }

	public int doAfterBody() throws JspTagException {
		try {
			JspWriter out = getPreviousOut();
			out.print(bodyContent.getString());
			bodyContent.clearBody();
			return getNext();
		}
		catch (IOException ex) {
			throw new JspTagException("ForEachTag: "+ex);
		}
	}

	private int getNext()
	{
	   if (it.hasNext()) {
		   currentValue = (String)it.next();
		   return EVAL_BODY_AGAIN;
	   }
	   return SKIP_BODY;
	}

	public String getCurrentValue() {
	   return currentValue;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?