黑马程序员技术交流社区

标题: 【自定义标签】 [打印本页]

作者: 黑马晓志    时间: 2014-5-6 21:29
标题: 【自定义标签】
本帖最后由 黑马晓志 于 2014-5-7 07:50 编辑

ChooseTahg中没有初始化isDo,为什么WhenTag类按照isDo是false来处理。
WhooseTag
  1. package com.xiaozhi.web.tag;

  2. import java.io.IOException;

  3. import javax.servlet.jsp.JspException;
  4. import javax.servlet.jsp.tagext.SimpleTagSupport;

  5. public class ChooseTag extends SimpleTagSupport {

  6.         private boolean isDo;
  7.        
  8.        
  9.         public boolean isDo() {
  10.                 return isDo;
  11.         }

  12.         public void setDo(boolean isDo) {
  13.                 this.isDo = isDo;
  14.         }

  15.         @Override
  16.         public void doTag() throws JspException, IOException {
  17.                 this.getJspBody().invoke(null);
  18.         }
  19. }
复制代码

WhenTag.java
  1. package com.xiaozhi.web.tag;

  2. import java.io.IOException;

  3. import javax.servlet.jsp.JspException;
  4. import javax.servlet.jsp.tagext.SimpleTagSupport;

  5. public class WhenTag extends SimpleTagSupport {

  6.         private boolean test;
  7.        
  8.         public void setTest(boolean test) {
  9.                 this.test = test;
  10.         }

  11.         @Override
  12.         public void doTag() throws JspException, IOException {
  13.                 ChooseTag parent=(ChooseTag) this.getParent();
  14.                 if(test && !parent.isDo())
  15.                 {
  16.                         this.getJspBody().invoke(null);
  17.                         parent.setDo(true);
  18.                 }               
  19.         }
  20. }
复制代码








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2