在使用JSP标签时,有大量的操作代码是重复的,这些代码分别集中到BaseSimpleTagSupport,BaseTagSupport, BaseBodyTagSupport三个标签支持父类中,分别继承三个基础类,SimpleTagSupport,BaseTagSupport, BaseBodyTagSupport。作为大部分情况下,使用SimpleTagSupport生成的处理程序,结合logic标签和 pagedefault标签在页面上设置变量,并可以使用bean/invoke标签访问各个java对象的熟性,实现了让不懂JAVA的人员可以直接在 HTML上“写程序”;除非是必须内嵌或循环等需要,否则没有必要使用后面两个更复杂的标签。
所有jsp标签都可以通过继承这三个标签中的一个完成指定的所有功能,当然,也可以直接继承其父类,然后自已实现代码——实际上覆盖父类方法也是一样的。
三个标签中集中了如下通用的功能:
需要特别说明的是BaseSimpleTagSupport和后两者的nexto的方式是不一样的。由于SimpleTagSupport只有一个体内容,所以无论是错误还是目的转向都没有区别,只是转向对象的改变。而后两者则有doEnd,doStart,doAfter三个体内容,如果在doStartTag就转向,显然不符合要求,因此,BaseTagSupport和BaseBodyTagSupport的nexto转向都在doEnd执行,而如果发生错误,则在任何位置转向错误页面,默认是errors.jsp
ActionTag标签继承BaseSimpleTagSupport,是所有进行操作类型的父标签,相当于struts中的ActionServlet,它完成以下的工作,其中主要是对数据库记录的操作:posted Friday, 22 April 2005
本文地址:http://com.8s8s.com/it/it10062.htm