您好,登錄后才能下訂單哦!
這篇文章主要介紹“JSP內置對象及方法有哪些”,在日常操作中,相信很多人在JSP內置對象及方法有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JSP內置對象及方法有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
request javax.servlet.http.HttpServletRequest request
response javax.servlet.http.HttpServletResponse response
pageContext javax.servlet.jsp.PageContext page
session javax.servlet.http.HtpSession session
application javax.servlet.jsp.ServletContext application
out javax.servlet.jsp.JspWriter page
config javax.servlet.ServletConfig page
page java.lang.Object page
exception java.lang.Throwable page
第一類:與Servlet有關:page和config
第二類:與Input/Output有關:out,request和response
第三類:與Context有關:application,session和pageContext
第四類:與Error有關:exceptio
page:就是設置的屬性只能在當前頁面有效。通過pageContext的setAttribute()和getAttribute()。
request:指屬性在一次請求范圍內有效。如果頁面從給一個頁面跳轉到另一個頁面,那么該屬性就失效了。這里所指的跳轉是指客戶端跳轉,比如客戶單擊超鏈接跳轉到其他頁面或者通過瀏覽器地址欄瀏覽其他頁面。如果使用服務器端跳轉<jsp:forward>,則該屬性仍然生效。同理使用request對象的setAttribute()和getAttribute()。
session:指客戶瀏覽器與服務器一次會話范圍內,如果服務器斷開連接,那么屬性就失效了。同理通過session對象的setAttribute()和getAttribute()。session范圍的例外比如重新打開一個瀏覽器。
application:指在整個服務器范圍,知道服務器停止以后才會失效。同理通過application對象的setAttribute()和getAttribute()。application范圍就是保存的屬性只要服務器不重啟,就能在任意頁面中獲取,就算重新打開瀏覽器也是可以獲取屬性的。
客戶端的請求信息被封裝在request對象中,通過它才能了解到客戶的需求,
然后做出響應。它是HttpServletRequest類的實例。
objectgetAttribute(Stringname)返回指定屬性的屬性值
EnumerationgetAttributeNames()返回所有可用屬性名的枚舉
StringgetCharacterEncoding()返回字符編碼方式
intgetContentLength()返回請求體的長度(以字節數)
StringgetContentType()得到請求體的MIME類型
ServletInputStreamgetInputStream()得到請求體中一行的二進制流
StringgetParameter(Stringname)返回name指定參數的參數值
EnumerationgetParameterNames()返回可用參數名的枚舉
String[]getParameterValues(Stringname)返回包含參數name的所有值的數組
StringgetProtocol()返回請求用的協議類型及版本號
StringgetScheme()返回請求用的計劃名,如:http.https及ftp等
StringgetServerName()返回接受請求的服務器主機名
intgetServerPort()返回服務器接受此請求所用的端口號
BufferedReadergetReader()返回解碼過了的請求體
StringgetRemoteAddr()返回發送此請求的客戶端IP地址
StringgetRemoteHost()返回發送此請求的客戶端主機名
voidsetAttribute(Stringkey,Objectobj)設置屬性的屬性值
StringgetRealPath(Stringpath)返回一虛擬路徑的真實路徑
session對象指的是客戶端與服務器的一次會話,從客戶連到服務器的一個WebApplication開始,直到客戶端與服務器斷開連接為止。它是HttpSession類的實例.
序號方法說明
longgetCreationTime()返回SESSION創建時間
publicStringgetId()返回SESSION創建時JSP引擎為它設的惟一ID號
longgetLastAccessedTime()返回此SESSION里客戶端最近一次請求時間
intgetMaxInactiveInterval()返回兩次請求間隔多長時間此SESSION被取
String[]getValueNames()返回一個包含此SESSION中所有可用屬性的數組
voidinvalidate()取消SESSION,使SESSION不可用
booleanisNew()返回服務器創建的一個SESSION,客戶端是否已經加入
voidremoveValue(Stringname)刪除SESSION中指定的屬性
voidsetMaxInactiveInterval()設置兩次請求間隔多長時間此SESSION被取消(ms)
out對象是JspWriter類的實例,是向客戶端輸出內容常用的對象;
序號方法說明
voidclear()清除緩沖區的內容
voidclearBuffer()清除緩沖區的當前內容
voidflush()清空流
intgetBufferSize()返回緩沖區以字節數的大小,如不設緩沖區則為0
intgetRemaining()返回緩沖區還剩余多少可用
booleanisAutoFlush()返回緩沖區滿時,是自動清空還是拋出異常
voidclose()關閉輸出流
page對象就是指向當前JSP頁面本身,有點象類中的this指針,它是java.lang.Object類的實例序號方法說明
classgetClass返回此Object類
inthashCode()返回此Object的hash碼
booleanequals(Objectobj)判斷此Object是否與指定的Object對象相等
voidcopy(Objectobj)把此Object拷貝到指定的Object對象中
Objectclone()克隆此Object對象
StringtoString()把此Object對象轉換成String類的對象
voidnotify()喚醒一個等待的線程
voidnotifyAll()喚醒所有等待的線程
voidwait(inttimeout)使一個線程處于等待直到timeout結束或被喚醒
voidwait()使一個線程處于等待直到被喚醒
voidenterMonitor()對Object加鎖
voidexitMonitor()對Object開鎖
application對象實現了用戶間數據的共享,可存放全局變量。它開始于服務器的啟動,直到服務器的關閉,在此期間,此對象將一直存在;這樣在用戶的前后連接或不同用戶之間的連接中,可以對此對象的同一屬性進行操作;在任何地方對此對象屬性的操作,都將影響到其他用戶對此的訪問。服務器的啟動和關閉決定了application對象的生命。它是ServletContext類的實例。
ObjectgetAttribute(Stringname)返回給定名的屬性值
EnumerationgetAttributeNames()返回所有可用屬性名的枚舉
voidsetAttribute(Stringname,Objectobj)設定屬性的屬性值
voidremoveAttribute(Stringname)刪除一屬性及其屬性值
StringgetServerInfo()返回JSP(SERVLET)引擎名及版本號
StringgetRealPath(Stringpath)返回一虛擬路徑的真實路徑
ServletContextgetContext(Stringuripath)返回指定WebApplication的application對象
intgetMajorVersion()返回服務器支持的ServletAPI的最大版本號
intgetMinorVersion()返回服務器支持的ServletAPI的最大版本號
StringgetMimeType(Stringfile)返回指定文件的MIME類型
URLgetResource(Stringpath)返回指定資源(文件及目錄)的URL路徑
InputStreamgetResourceAsStream(Stringpath)返回指定資源的輸入流
RequestDispatchergetRequestDispatcher(Stringuripath)返回指定資源的RequestDispatcher對象
ServletgetServlet(Stringname)返回指定名的Servlet
EnumerationgetServlets()返回所有Servlet的枚舉
EnumerationgetServletNames()返回所有Servlet名的枚舉
voidlog(Stringmsg)把指定消息寫入Servlet的日志文件
voidlog(Exceptionexception,Stringmsg)把指定異常的棧軌跡及錯誤消息寫入Servlet的日志文件
voidlog(Stringmsg,Throwablethrowable)把棧軌跡及給出的Throwable異常的說明信息寫入Servlet的日志文件
exception對象是一個例外對象,當一個頁面在運行過程中發生了例外,就產生這個對象。如果一個JSP頁面要應用此對象,就必須把isErrorPage設為true,否則無法編譯。他實際上是java.lang.Throwable的對象
StringgetMessage()返回描述異常的消息
StringtoString()返回關于異常的簡短描述消息
voidprintStackTrace()顯示異常及其棧軌跡
ThrowableFillInStackTrace()重寫異常的執行棧軌跡
pageContext對象提供了對JSP頁面內所有的對象及名字空間的訪問,也就是說他可以訪問到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當于頁面中所有功能的集大成者,它的本類名也叫pageContext。
JspWritergetOut()返回當前客戶端響應被使用的JspWriter流(out)
HttpSessiongetSession()返回當前頁中的HttpSession對象(session)
ObjectgetPage()返回當前頁的Object對象(page)
ServletRequestgetRequest()返回當前頁的ServletRequest對象(request)
ServletResponsegetResponse()返回當前頁的ServletResponse對象(response)
ExceptiongetException()返回當前頁的Exception對象(exception)
ServletConfiggetServletConfig()返回當前頁的ServletConfig對象(config)
ServletContextgetServletContext()返回當前頁的ServletContext對象(application)
voidsetAttribute(Stringname,Objectattribute)設置屬性及屬性值
voidsetAttribute(Stringname,Objectobj,intscope)在指定范圍內設置屬性及屬性值
publicObjectgetAttribute(Stringname)取屬性的值
ObjectgetAttribute(Stringname,intscope)在指定范圍內取屬性的值
publicObjectfindAttribute(Stringname)尋找一屬性,返回起屬性值或NULL
voidremoveAttribute(Stringname)刪除某屬性
voidremoveAttribute(Stringname,intscope)在指定范圍刪除某屬性
intgetAttributeScope(Stringname)返回某屬性的作用范圍
EnumerationgetAttributeNamesInScope(intscope)返回指定范圍內可用的屬性名枚舉
voidrelease()釋放pageContext所占用的資源
voidforward(StringrelativeUrlPath)使當前頁面重導到另一頁面
voidinclude(StringrelativeUrlPath)在當前位置包含另一文件
config對象是在一個Servlet初始化時,JSP引擎向它傳遞信息用的,此信息包括Servlet初始化時所要用到的參數(通過屬性名和屬性值構成)以及服務器的有關信息(通過傳遞一個ServletContext對象)
到此,關于“JSP內置對象及方法有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。