首页 > 代码库 > 第六章_编写定制标签

第六章_编写定制标签

6.1、定制标签概述

利用jsp标准动作指令访问和操作javaBeans,是首次尝试将表现代码和业务逻辑实现分离。但是,标准动作指令的功能不够强大,单独使用时,开发者经常要使用jsp页面中的java代码。例如,标准动作指令无法像jstlforEach标签那样迭代集合。

认识到了用javabean分离表现逻辑和业务逻辑的不足之处之后,jsp1.1就定义了定制标签。定制标签具有javaBeans所没有的优势。例如,定制标签可以访问jsp隐式对象,可以带有属性等。

 

6.2、简单的标签处理器

jsp2.0中,他们在javax.servlet.jsp.tagext包中添加了新的接口:simpleTag。实现SimpleTag接口的标签处理器称作简单的标签处理器,实现TagIterationBodyTag接口的标签处理器称作典型的标签处理器。

简单的标签处理器的声明周期更加简单,并且更容易。SimpleTag接口中只有一个方法:doTag,并且在标签调用时只执行一次。业务逻辑、迭代及主体操作代码都要在这里编写。简单的标签处理器中的主体是用一个JspFragment类实例表示的。