3个编译指令:
1、page
:针对当前页面的指令<%@ page ...%>
2、include
:指定包含另一个页面<%@ include file="jsp.jsp"%>
3、taglib
:定义和访问自定义标签<%@ taglib uri="网址" prefix="mytag" %>
7个动作指令:
1、jsp:forward
:执行页面转向,将请求的处理转发到下一个页面
<jsp:forward page="relativeURL|<%=expression%>">
<jsp:param name="" value=""/>
</jsp:forward>
2、jsp:param
:用于传递参数,必须与其他支持参数的标签一起使用
3、jsp:include
:动态引入一个JSP页面
<jsp:include page="relativeURL|<%=expression%>" flush="true">
<jsp:param name="" value=""/>
</jsp:include>
4、jsp:plugin
:用于下载JavaBean或Applet到客户端执行
5、jsp:useBean
:创建一个JavaBean的实例
<jsp:useBean id="name" class="classname" scope="page|request|session|application"/>
6、jsp:setProperty
:设置JavaBean实例的属性值
<jsp:setProperty name="BeanName" property="propertyName" value="value">
7、jsp:getProperty
:输出JavaBean实例的属性值
<jsp:getProperty name="BeanName" property="propertyName">
9个内置对象:
1、application
:javax.servlet.ServletContext
的实例,这个实例代表JSP所属的Web应用本身,可用于JSP页面,或者在Servlet之间交换信息,常用的方法有getAttribute(String attName)
、setAttribute(String attName,String attvalue)
、getInitParameter(String paramName)
等
2、config
:javax.servlet.ServletConfig
的实例,这个实例代表JSP的配置信息,常用的方法有getInitParameter(String paramName)
和getInitParameternames()
等方法。实际上,JSP页面通常不需要配置,所以不存在配置信息,在Servlet中用到的更多
3、exception
:java.lang.Throwable
的实例,page的isErrorPage属性为true时,这个对象才可以使用,常用的方法有getMessage()
和printStackTrace()
等
4、out
:javax.servlet.jsp.JspWriter
的实例,输出流,用于输出内容,形成HTML页面
5、page
:代表该页面本身,没太大用处,相当于Servlet中的this,能用page的地方就能用this
6、pageContext
:javax.servlet.jsp.PageContext
的实例,这个对象代表该JSP页面上下文,使用该对象可以访问页面中的共享数据,常用的方法有getServletContext()
和getServletConfig()
,还有:
getAttribute(String name,int PageContext.PAGE_SCOPE|PageContext.REQUEST_SCOPE|PageContext.SESSION_SCOPE|
PageContext.APPLICATION_SCOPE)
setAttribute(...)
7、request
:javax.servlet.http.HttpServletRequest
的实例,该对象封装了一次请求,客户端的请求参数都被封装在该对象里,获取客户端请求参数必须使用该对象,常用的方法有getParameter(String paramName)
、getParameterValues(String paramName)
、setAttribute(String attrname,Object attrValue)
、getAttribute(String attrName)
和setCharacterEncoding(String env)
等
8、response
:代表服务器对客户端的响应,一般很少使用该对象直接响应,一般使用out对象,除非需要生成非字符响应;response常用于重定向,常用的方法有getOutputStream()
、sendRedirect(java.lang.String location)
等
9、session
:该对象代表一次会话,当客户端浏览器与站点建立连接时,会话开始;当客户端关闭浏览器时,会话结束,常用的方法有getAttribute(String attrName)
、setAttribute(String attrName,Object attrValue)
等