JSP自定义标签_自定义标签的扩展功能总结

控制jsp页面某一部分内容是否执行。
  1.编写一个类实现tag接口,控制dostarttag方法的返回值,如果这个方法返回EVAL_BODY_INCLUDE,则执行标签体,如果返回SKIP_BODY,则不执行标签体控制整个    jsp页面是否执行。
  2、编写一个类实现tag接口,控制doendtag方法的返回值,如果这个方法返回EVAL_PAGE,则执行标签余下的jsp页面,如果返回SKIP_PAGE,则不执行余下的jsp
   控制jsp页面内容重复执行。
  3.编写一个类实现Iterationtag接口,控制doAfterBody方法的返回值,如果这个方法返回EVAL_BODY_AGAIN, 则web服务器又执行一次标签体,依次类推,一直执行到   doAfterBody方法返回SKIP_BODY,则标签体才不会重复执行。
  修改jsp页面内容输出。
  4、编写一个类实现BodyTag接口,控制doStartTag方法,返回EVAL_BODY_BUFFERED,则web服务器会创建BodyContent对象捕获标签体,开发人员在doendtag方法  体内,得到代表标签体的bodyContent对象,从而就可以对标签体进行修改。。。。。。操作。


简单标签实现页面逻辑

控制jsp页面某一部分内容是否执行。
1.在dotag方法里面不调用jspFrament.invoke方法即可

控制jsp页面内容重复执行。
1.在dotag方法重复调用jspFrament.invoke方法即可

修改jsp页面内容输出
1.在dotag方法调用jspFrament.invoke方法时,让执行结果写一个自定义的缓冲中即可,然后开发人员可以取出缓冲的数据修改输 出

控制整个jsp页面是否执行。
1.在dotag方法抛SKIPPageException即可,jsp收到这个异常,将忽略标签余下jsp页面的执行

原文地址:https://www.cnblogs.com/lichone2010/p/3146088.html