JSP custom tag - Custom script programming variables in JSP tags

xiaoxiao2021-03-06  14

Package tag20;

import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.BodyTagSupport; import java.io.IOException; import java.util.List; import java.util.ArrayList; Import java.util.iterator;

public class Tag20 extends BodyTagSupport {private String string; private List lists; private Iterator iters; public void setString (String string) {this.string = string;} public void setLists (List lists) {this.lists = lists;} public void DOINITBODY () THROWS JSPEXCEPTION {IF (lists.size ()> = 0) {ified = lists.iterator ();} if (ity) {pagecontext.setttribute (string, ney ney ney ney);} } public int doAfterBody () throws JspException {try {if (iters.hasNext ()) {pageContext.setAttribute (string, iters.next ()); return EVAL_BODY_AGAIN;} else {getBodyContent () writeOut (getPreviousOut ()).; }} Catch (ioException ie) {throw new jspexception (ooe.getMessage ());} Return Skip_body;}}

Package tag20;

Import javax.servlet.jsp.tagext.tagextrainfo; import javax.servlet.jsp.tagext.tagdata; import javax.servlet.jsp.tagext.variableinfo;

public class Info20 extends TagExtraInfo {public VariableInfo [] getVariableInfo (TagData data) {String string = (String) data.getAttribute ( "string"); VariableInfo infos = new VariableInfo (string, "java.lang.String", true, VariableInfo .NESTED); return new variableinfo [] {infos};}} <% @ page contenttype = "text / html; charset = GBK"%> <% @ taglib prefix = "tag" URI = "tag20.tld"%> <% @ page import = "java.util.list, java.util.ArrayList"%>

<% ArrayList lists = new ArrayList (); lists.add ( "aaaaaaaaaaaaaaaaaaaaaa"); lists.add ( "bbbbbbbbbbbbbbbbbbbbbb"); lists.add ( "cccccccccccccccccccccc"); lists.add ( "dddddddddddddddddddddd"); lists.add ( "eeeeeeeeeeeeeeeeeeeeee"); lists.add ( "ffffffffffffffffffffff"); lists.add ( "gggggggggggggggggggggg");%> ■■■■■■■■■■■■■■ Tag20>

1.2 1.2 -------- ` `` `` `` ` tag20 tag20.tag20 Tag20.info20 < Body-Content> JSP string true TRUE lists < / Name> True TRUE Result:

■■■■■■■■■ aaaaaaaaaaaaaaaaaaaaaa ■■■■■■■■■■■■■■■■■■ bbbbbbbbbbbbbbbbbbbbbb ■■■■■■■■■■■■■■■■■■ cccccccccccccccccccccc ■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■ ■■■ ■ ffffffffff ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

转载请注明原文地址:https://www.9cbs.com/read-46595.html

New Post(0)