九大隐式对象
request 请求对象 类型 javax.servlet.ServletRequest 作用域 Request
response 响应对象 类型 javax.servlet.SrvletResponse 作用域 Page
pageContext 页面上下文对象 类型 javax.servlet.jsp.PageContext 作用域 Page
session 会话对象 类型 javax.servlet.http.HttpSession 作用域 Session
application 应用程序对象 类型 javax.servlet.ServletContext 作用域 Application
out 输出对象 类型 javax.servlet.jsp.JspWriter 作用域 Page
config 配置对象 类型 javax.servlet.ServletConfig 作用域 Page
page 页面对象 类型 javax.lang.Object 作用域 Page
exception 例外对象 类型 javax.lang.Throwable 作用域 page
----------------------------------------------------------------------------------------
指令
1)page
<%@ page import="java.util.List" %>
常用参数:import、contentType、pageEncoding
2) include
<%@ include file="url" %>
----------------------------------------------------------------------------------
脚本元素
1) <% %> Scriptlet
<% out.println(message) %>
2) <%! %> 声明 <%= %> 表达式
<%! public String getDay() %>
<%= getDay() %>
声明中可以覆盖两个JSP生命周期中的方法jspInit和jspDestroy
----------------------------------------------------------------------------------
动作
1)useBean 创建一个对象
<jsp:useBean id="today" class="java.util.Date" />
2) setProperty / getProperty 设置和获取对象属性
<jsp:setProperty name="today" property="date" value"16"/>
<jsp:getProperty name="today" property="date"/>
3)include 动态包含一个页面
<%@include %>是在编译时包含,编译成一个servlet
<jsp:include/>则是在请求时包含,其实是编译成两个servlet,并且可以传递参数
<jsp:include page="xxx.jsp">
<jsp:param name="text" value="xxx"/>
</jsp:include>
4)forward 跳转
<jsp:forwad page="xxx.jsp">
<jsp:param name="text" value="xxx"/>
<jsp:forward>
5)错误处理
利用<%@page isErrorPage="true"%>声明errorHandler.jsp为错误处理页面
利用<%@page errorPage="errorHandler.jsp" %>指定当前页面的错误处理页面
web.xml 的加载顺序是:context-param
-> listener -> filter -> servlet ,而同个类型之间的实际程序调用的时候的顺序是根据对应的 mapping 的顺序进行调用的。
参照:http://www.cnblogs.com/JesseV/archive/2009/11/17/1605015.html