Declaration--声明
<%!
int count = 0;
void m(){}
%> 成员变量,可以声明方法
<%
int count2 = 0;
%> 局部变量
<%= ++count %> 刷新会加1
<%= ++count2 %> 刷新只是第一次加1,之后不会变
Scriptlet
<%
java代码;
%>
<%= %>
注释格式:
<%-- ...--%>
<%//......%>
<%/*....*/%>
Directive--编译指令
格式
<%@Directive属性="属性值"%>
常见的Directiv:
page
指明JSP Container的沟通方式
基本格式:
<%@page language="script language"| --不需指定
extends="className"| --从哪继承,不需指定
import="importList"| --引入包,类
buffer="none|kb size"| --none:不缓冲,默认8k
session="true|false"| --是否可以使用session,默认true
autoFlush="true|false"| --缓冲是否自动清除,默认true
isThreadSafe="true|false"| --默认false,不需指定
info="infoText"| --任何字符,描述信息
errorPage="errorPageUrl"| --出错之后要显示的页面
isErrorPage="true|false"| --是否是显示错误的页面
contentType="contentTypeInfo" --编码类型
%>
错误信息:<%= exception.getMessage()%>
include
将指定的JSP程序或者HTML文件包含进来
格式:
<%@include file="fileURL"%>
不能向fileURL中传参数
不能abc.jsp?user=aa
taglib
Action --动作指令,运行期间的命令
常见的:
jsp:useBean
jsp:setProperty
jsp:getProperty
jsp:include
用于动态包含JSP程序或HTML文件
格式:
<jsp:include page="URLSpec" flush="true"/>
<jsp:include page="URLSpec" flush="true">
<jsp:param name="ParamName" value="paramValue"/>
</jsp:include>
parame 用于jsp页面传参数
jsp:forward
jsp:param
jsp:plugin
<jsp:forward>与response.sendRedirect的区别
<jsp:forward>使用同一个request
response.sendRedirect是不同的request