1 JSP内建对象
在所有的JSP页面中都能使用内建对象。所有的隐含对象只有对Scriptlet或者表达式有用,在JSP声明中不可用。
(1)out
(2)request
(3)response
(4)session
session只能保存对象,不能保存原生类型。
(5)pageContext
(6)application
(7)config
(8)page
(9)exception
在JSP中提供了4种属性的可见范围:
(1)page:只在一个页面中可见,跳转之后无效;
(2)request:只在一次请求中可见,服务器跳转后依然有效;
(3)session:在一次回话范围中可见,无论何种跳转都可见,但新开浏览器不可见;
(4)application:在整个应用中可见,所有用户都可以使用。
pageContext ==> page
request, response ==> request
session ==> session
application ==> application
以上5个内置对象都支持以下的属性操作方法:
setAttribute(String name, Object o);
getAttribute(String name);
removeAttribute(String name);
(1)pageContext的setAttribute()方法可以接收第三个参数(int型),设定属性的范围PageContext.PAGE_SCOPE,PageContext.REQUEST_SCOPE,PageContext.SESSION_SCOPE,PageContext.APPLICATION_SCOPE
(2)request对象常用方法
getParameter(String name)
getParameterValues(String name)
(3)response对象常用方法
response.sendRedirect()
使用该方法跳转后,地址栏的页面地址会改变,属于客户端跳转。与<jsp:forward>的区别:
<jsp:forward>属于服务器端跳转,跳转之后地址栏不变;而且在使用request属性范围时,只有服务器端跳转才能够将request属性保存到跳转页;而如果是客户端跳转,则无法进行属性的传递;如果使用的是服务器端跳转,则执行到跳转语句时会立刻进行跳转;如果使用的是客户端跳转,则是在整个页面执行完之后才执行跳转。