jsp頁面9中隱含物件和4個作用域物件
阿新 • • 發佈:2019-02-06
JSP的隱含物件:
不需要new,就可以直接使用的一組物件。
tomcat自動建立,只能使用在表示式指令碼<%= %>和普通指令碼<% %>中。
1、request【重點】
型別:javax.servlet.http.HttpServletRequest
方法:request.getParameter("txtUsername");
request.setCharacterEncoding("gbk");
request.setAttribute(String, Object)
request.getAttribute(String);
request.getSession(true);
request.getRequestDispatcher("/url-pattern");
request.getCookies();
2、session【重點】
型別:javax.servlet.http.HttpSession
方法:session.getId()
session.setAttribute(String, Object)
session.getAttribute(String)
session.removeAttribute(String)
session.invalidate()
開始:client第1次發出JSP請求時,session即開始
結束:超時,invalidate()
3、response
型別:javax.servlet.http.HttpServletResponse
方法:response.setContentType("text/html");
response.getWriter();
response.setCharacterEncoding("gbk");
response.sendRedirect("/web應用名/url-pattern");
4、out
型別:javax.servlet.jsp.JspWriter
方法:out.print()//往IE列印
out.println()//往IE列印,在原始碼中新增換行
out.write()//往IE列印,通常使用者列印常量
5、application
型別:javax.servlet.ServletContext
方法:application.getInitParameter("name");
application.setAttribute(String, Object)
application.getAttribute(String)
application.removeAttribute(String)
6、page
型別:java.lang.Object
代表當前JSP頁面,可以理解成this,jsp是特殊的servlet類,生成jsp頁面也就生成相應的servlet例項。page代表當前servlet物件例項,一般不用。
7、config
型別:javax.servlet.ServletConfig
8、exception
型別:java.lang.Throwable
只能使用在 <%@ page isErrorPage="true" %>的JSP中。
9、pageContext
它是pageContext的物件,PageContext是JspContext的子類
1) 可以獲取其它8個隱含物件
JspWriter o = pageContext.getOut();
2) 作用域(JSP中一共有4個作用域物件,從小到大:pageContext、request、session、application)
當前請求中的一個頁面
型別:javax.servlet.jsp.PageContext
方法:pageContext.setAttribute(String, Object);
pageContext.getAttribute(String);
3)可以訪問其它3個作用域中的命名屬性
//從4個作用域從小到大搜索指定的命名屬性,找到即停止
方法:pageContext.findAttribute(String);//jspContext裡面的方法
//從指定作用域中獲取命名屬性
pageContext.getAttribute("name", PageContext.APPLICATION_SCOPE)
不需要new,就可以直接使用的一組物件。
tomcat自動建立,只能使用在表示式指令碼<%= %>和普通指令碼<% %>中。
1、request【重點】
型別:javax.servlet.http.HttpServletRequest
方法:request.getParameter("txtUsername");
request.setCharacterEncoding("gbk");
request.setAttribute(String, Object)
request.getAttribute(String);
request.getSession(true);
request.getRequestDispatcher("/url-pattern");
request.getCookies();
2、session【重點】
型別:javax.servlet.http.HttpSession
方法:session.getId()
session.setAttribute(String, Object)
session.getAttribute(String)
session.removeAttribute(String)
session.invalidate()
開始:client第1次發出JSP請求時,session即開始
結束:超時,invalidate()
3、response
型別:javax.servlet.http.HttpServletResponse
方法:response.setContentType("text/html");
response.getWriter();
response.setCharacterEncoding("gbk");
response.sendRedirect("/web應用名/url-pattern");
4、out
型別:javax.servlet.jsp.JspWriter
方法:out.print()//往IE列印
out.println()//往IE列印,在原始碼中新增換行
out.write()//往IE列印,通常使用者列印常量
5、application
型別:javax.servlet.ServletContext
方法:application.getInitParameter("name");
application.setAttribute(String, Object)
application.getAttribute(String)
application.removeAttribute(String)
6、page
型別:java.lang.Object
代表當前JSP頁面,可以理解成this,jsp是特殊的servlet類,生成jsp頁面也就生成相應的servlet例項。page代表當前servlet物件例項,一般不用。
7、config
型別:javax.servlet.ServletConfig
8、exception
型別:java.lang.Throwable
只能使用在 <%@ page isErrorPage="true" %>的JSP中。
9、pageContext
它是pageContext的物件,PageContext是JspContext的子類
1) 可以獲取其它8個隱含物件
JspWriter o = pageContext.getOut();
2) 作用域(JSP中一共有4個作用域物件,從小到大:pageContext、request、session、application)
當前請求中的一個頁面
型別:javax.servlet.jsp.PageContext
方法:pageContext.setAttribute(String, Object);
pageContext.getAttribute(String);
3)可以訪問其它3個作用域中的命名屬性
//從4個作用域從小到大搜索指定的命名屬性,找到即停止
方法:pageContext.findAttribute(String);//jspContext裡面的方法
//從指定作用域中獲取命名屬性
pageContext.getAttribute("name", PageContext.APPLICATION_SCOPE)