在JSP的规范中提供了一些标准标签(Standard Tag),所有的容器都支持这些标签,它可以协助编写JSP时减少Scriptlet的使用。所有的标准标签都使用jsp:
作为前置。这些标准标签是在JSP早起的规范中提出的,后来提出的JSTL(JSP Standard Tag Library)与表达式语言(Expression Language)在许多功能上都可以体态原有的标准标签。
<jsp:include>
与<jsp:forward>
标签
include指示元素可以静态的包含另一个JSP页面。如果想要在运行时动态地调整想要包括的JSP页面,则可以使用<jsp:include>
标签。例如:
<jsp:include page="add.jsp">
<jsp:param name="a" value="1" />
<jsp:param name="b" value="2" />
</jsp:include>
上述例子会将add.jsp包含进来,并指定了要提供给该页面的参数。
事实上,<jsp:include>
与<jsp:forward>
标签,在转译为Servlet源代码后,底层也是取得RequestDispatcher对象,并执行对应的forward()或include()方法。
<jsp:useBean>
、<jsp:setProperty>
与<jsp:getProperty>
标签
<jsp:useBean>
标签时用来搭配JavaBean组件的标准标签,这里所值的JavaBean并非桌面系统或EJB中的JavaBean组件,而是满足以下条件的纯粹Java对象:
- 必须实现java.io.Serializable接口
- 没有公开的类变量
- 具有无参数的构造函数
- 具有公开的设值方法(Setter)与取值方法(Getter)
<jsp:setProperty>
与<jsp:getProperty>
标签分别用于设置和取得JavaBean的属性值。
其他标准标签
其他按标准标签还有<jsp:doBody>
、<jsp:invoke>
等,它们与自定义标签的使用有关。