昆明建个网站哪家便宜,深圳小程序网站开发,静态页面改wordpress,列举一个网络营销的案例JSP2.0中为了简化标签的复杂性#xff0c;增加了制作Simple Tag的标签类SimpleTagSupport类。 SimpleTagSupport类是实现SimpleTag接口的。它只需要实现一个doTag()方法即可#xff0c;而不需要一堆回传值。 举例说明#xff1a; 例1#xff1a;HelloSimpleTag标签 第一步增加了制作Simple Tag的标签类SimpleTagSupport类。 SimpleTagSupport类是实现SimpleTag接口的。它只需要实现一个doTag()方法即可而不需要一堆回传值。 举例说明 例1HelloSimpleTag标签 第一步制作标签处理类 HelloSimpleTag.java package com.newould.taglib; import java.io.*; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; public class HelloSimpleTag extends SimpleTagSupport { public void doTag() throws JspException, IOException { JspWriter out getJspContext().getOut(); out.println(Hello Simple Tag); } } 第二步编写标签性质文件 MyTaglib.tld ?xml version1.0 encodingUTF-8 ? taglib xmlnshttp://java.sun.com/xml/ns/j2ee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd version2.0 descriptionMy Taglib by JavaWorld.com.tw/description tlib-version1.0/tlib-version jsp-version2.0/jsp-version short-nameMytaglib/short-name uri/uri ...... tag descriptionHello Simple Tag/description nameHelloSimpleTag/name tag-classcom.newould.taglib.HelloSimpleTag/tag-class body-contentempty/body-content /tag /taglib 第三步编写Jsp网页 HelloSimpleTag.jsp % page contentTypetext/html;charsetGB2312 % % taglib uri/WEB-INF/tlds/MyTaglib.tld prefixmytag % html head titleHelloSimpleTag.jsp/title /head body h2Simple Tag 标签/h2 h1mytag:HelloSimpleTag //h1 /body /html 例2AddSimpleTag标签 第一步制作标签处理类 AddSimpleTag.java package com.newould.taglib; import java.io.*; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; public class AddSimpleTag extends SimpleTagSupport { private int num1 0; private int num2 0; public void setNum1(int num1) { this.num1 num1; } public void setNum2(int num2) { this.num2 num2; } public void doTag() throws JspException, IOException { JspContext ctx getJspContext(); JspWriter out ctx.getOut(); int sum num1 num2; ctx.setAttribute(sum, Integer.toString(sum)); out.println(num1 num2 sum); } } 第二步编写标签性质文件 MyTaglib.tld ?xml version1.0 encodingUTF-8 ? taglib xmlnshttp://java.sun.com/xml/ns/j2ee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd version2.0 descriptionMy Taglib by JavaWorld.com.tw/description tlib-version1.0/tlib-version jsp-version2.0/jsp-version short-nameMytaglib/short-name uri/uri ...... tag descriptionAdd Simple Tag/description nameAdd/name tag-classcom.newould.taglib.AddSimpleTag/tag-class body-contentempty/body-content attribute namenum1/name requiredtrue/required rtexprvaluetrue/rtexprvalue /attribute attribute namenum2/name requiredtrue/required rtexprvaluetrue/rtexprvalue /attribute /tag /taglib 第三步编写Jsp网页 AddSimpleTag.jsp % page contentTypetext/html;charsetGB2312 % % taglib uri/WEB-INF/tlds/MyTaglib.tld prefixmytag % html head titleAddSimpleTag.jsp/title /head body h2AddSimpleTag 标签/h2 h1mytag:Add num15 num29 //h1 最后结果${sum} /body /html 例3 RepeatSimpleTag标签 RepeatSimpleTag标签 主要是用来重复显示某段文字。 这个例子在处理上与前两个例子有点不同 第一步制作标签处理类 RepeatSimpleTag.java package com.newould.taglib; import java.io.*; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; public class RepeatSimpleTag extends SimpleTagSupport { private int count 0;//重复的次数 private JspFragment fragment;//重复的内容 public void setCount(int count) { this.count count; } public void setFragment(JspFragment fragment) { this.fragment fragment; } public void doTag() throws JspException, IOException { JspContext ctx getJspContext(); JspWriter out ctx.getOut(); for(int i0 ; icount ; i) { fragment.invoke(null);//表示将fragment的内容显示出来 } } } 第二步编写标签性质文件 MyTaglib.tld ?xml version1.0 encodingUTF-8 ? taglib xmlnshttp://java.sun.com/xml/ns/j2ee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd version2.0 descriptionMy Taglib by JavaWorld.com.tw/description tlib-version1.0/tlib-version jsp-version2.0/jsp-version short-nameMytaglib/short-name uri/uri ...... tag descriptionRepeate Simple Tag/description nameRepeat/name tag-classcom.newould.taglib.RepeatSimpleTag/tag-class body-contentempty/body-content attribute namecount/name requiredtrue/required rtexprvaluetrue/rtexprvalue /attribute attribute namefragment/name requiredtrue/required fragmenttrue/fragment /attribute /tag /taglib 注意fragmenttrue/fragment一定要这样设定fragment属性。 第三步编写Jsp网页 RepeatSimpleTag.jsp % page contentTypetext/html;charsetGB2312 % % taglib uri/WEB-INF/tlds/MyTaglib.tld prefixmytag % html head titleRepeatSimpleTag.jsp/title /head body h2RepeatSimpleTag 标签/h2 mytag:Repeat count5 jsp:attribute namefragment 重复执行 ....br /jsp:attribute /mytag:Repeat /body /html DynamicAttributes接口 只要制作的标签实现了DynamicAttributes接口就有动态属性的功能。 例如:我们要做多个数的累加运算,则AddSimpleTag标签就可以通过实现DynamicAttributes接口就可以实现了. 实现DynamicAttributes接口,必须实现setDynamicAttributes()方法,此方法用来接收动态属性. 举例:第一步制作标签处理类 package com.newould.taglib; import java.io.*; import java.util.*; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; public class DynamicAdd extends SimpleTagSupport implements DynamicAttributes { //用来接收动态属性 private ArrayList keys new ArrayList(); private ArrayList values new ArrayList(); public void doTag() throws JspException, IOException { JspContext ctx getJspContext(); JspWriter out ctx.getOut(); float num 0; float sum Float.parseFloat((String)values.get(0)); out.print(sum); for (int i 1 ; i keys.size() ; i) { String temp (String)values.get(i); num Float.parseFloat(temp); sum sum num; out.print( num); } out.print( sum); ctx.setAttribute(sum, Float.toString(sum)); } public void setDynamicAttribute(String uri, String name, Object value) throws JspException { keys.add(name); values.add(value); } } 第二步编写标签性质文件 tag descriptionDynamicAttribute/description nameDynAdd/name tag-classcom.newould.taglib.DynamicAdd/tag-class body-contentempty/body-content dynamic-attributestrue/dynamic-attributes /tag 第三步编写Jsp网页 % page contentTypetext/html;charsetGB2312 % % taglib prefixJSPBook tagdir/WEB-INF/tags/ % % taglib prefixc urihttp://java.sun.com/jsp/jstl/core % html head titleCH16 - DynAdd.jsp/title /head body h2Tag File 范例/h2 JSPBook:DynAdd num1111 num2222 num3444 jsp:attribute namegreat font colorredSUM${sum} .../red /jsp:attribute jsp:attribute nameless font colorblueSUM${sum} .../red /jsp:attribute /JSPBook:DynAdd /body /html JSP2.0中为了简化标签的复杂性增加了制作Simple Tag的标签类SimpleTagSupport类。 SimpleTagSupport类是实现SimpleTag接口的。它只需要实现一个doTag()方法即可而不需要一堆回传值。 转载于:https://www.cnblogs.com/jadmin/archive/2007/08/14/2206335.html