當(dāng)前訪問本站: hits

          yjhmily

          堅(jiān)持走自己的路……

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            100 Posts :: 8 Stories :: 353 Comments :: 0 Trackbacks

          一、page?對(duì)象
          ????page對(duì)象代表JSP本身,更準(zhǔn)確地說它代表JSP被轉(zhuǎn)譯后的Servlet,它可以調(diào)用Servlet類所定義的方法。
          ????????
          二、config?對(duì)象
          ????config?對(duì)象里存放著一些Servlet?初始的數(shù)據(jù)結(jié)構(gòu)。
          ????config?對(duì)象實(shí)現(xiàn)于javax.servlet.ServletConfig?接口,它共有下列四種方法:
          ????????public?String?getInitParameter(name)
          ????????public?java.util.Enumeration?getInitParameterNames(?)
          ????????public?ServletContext?getServletContext(?)
          ????????public?Sring?getServletName(?)

          三、request?對(duì)象
          ????request?對(duì)象包含所有請(qǐng)求的信息,如:請(qǐng)求的來源、標(biāo)頭、cookies和請(qǐng)求相關(guān)的參數(shù)值等等。
          ????request?對(duì)象實(shí)現(xiàn)javax.servlet.http.HttpServletRequest接口的,所提供的方法可以將它分為四大類:
          ????1.儲(chǔ)存和取得屬性方法;
          ????????void?setAttribute(String?name,?Object?value)?????? 設(shè)定name屬性的值為value
          ????????Enumeration?getAttributeNamesInScope(int?scope)????取得所有scope?范圍的屬性
          ????????Object?getAttribute(String?name)?????????????????? 取得name?屬性的值
          ????????void?removeAttribute(String?name)?????????????? ?? 移除name?屬性的值
          ????2.取得請(qǐng)求參數(shù)的方法
          ????????String?getParameter(String?name)?????????????? ? ? 取得name?的參數(shù)值
          ????????Enumeration?getParameterNames(?)?????????????? ? ? 取得所有的參數(shù)名稱
          ????????String?[]?getParameterValues(String?name)??????? ? 取得所有name?的參數(shù)值
          ????????Map?getParameterMap(?)?????????????????????????????取得一個(gè)要求參數(shù)的Map
          ????3.能夠取得請(qǐng)求HTTP?標(biāo)頭的方法
          ????????String?getHeader(String?name)????????????????????? 取得name?的標(biāo)頭
          ????????Enumeration?getHeaderNames()?????????????????????? 取得所有的標(biāo)頭名稱
          ????????Enumeration?getHeaders(String?name)??????????????? 取得所有name?的標(biāo)頭
          ????????int?getIntHeader(String?name)????????????????????? 取得整數(shù)類型name?的標(biāo)頭
          ????????long?getDateHeader(String?name)??????????????? ??? 取得日期類型name?的標(biāo)頭
          ????????Cookie?[]?getCookies(?)??????????????????????? ??? 取得與請(qǐng)求有關(guān)的cookies
          ????4.其他的方法
          ????????String?getContextPath(?)?????????????????????????? 取得Context?路徑(即站臺(tái)名稱)
          ????????String?getMethod(?)??????????????????????????????? 取得HTTP?的方法(GET、POST)
          ????????String?getProtocol(?)?????????????????????????? ?? 取得使用的協(xié)議?(HTTP/1.1、HTTP/1.0?)
          ????????String?getQueryString(?)??????????????????? ? ? ?? 取得請(qǐng)求的參數(shù)字符串,不過,HTTP的方法必須為GET
          ????????String?getRequestedSessionId(?)???????????? ? ? ?? 取得用戶端的Session?ID
          ????????String?getRequestURI(?)????????????????????????????取得請(qǐng)求的URL,但是不包括請(qǐng)求的參數(shù)字符串
          ????????String?getRemoteAddr(?)????????????????????????????取得用戶的IP?地址
          ????????String?getRemoteHost(?)????????????????????????????取得用戶的主機(jī)名稱
          ????????int?getRemotePort(?)?????????????????????????? ? ? 取得用戶的主機(jī)端口
          ????????String?getRemoteUser(?)????????????????????? ? ? ? 取得用戶的名稱
          ????????void?etCharacterEncoding(String????encoding)?????? 設(shè)定編碼格式,用來解決窗體傳遞中文的問題

          四、response?對(duì)象
          ????response?對(duì)象主要將JSP?處理數(shù)據(jù)后的結(jié)果傳回到客戶端。
          ????response?對(duì)象是實(shí)現(xiàn)javax.servlet.http.HttpServletResponse?接口。response對(duì)象所提供的方法。
          ????1.設(shè)定表頭的方法
          ????????void?addCookie(Cookie?cookie)??????????????????? ? 新增cookie
          ????????void?addDateHeader(String?name,?long?date)???????? 新增long類型的值到name標(biāo)頭
          ????????void?addHeader(String?name,?String?value)????????? 新增String類型的值到name標(biāo)頭
          ????????void?addIntHeader(String?name,?int?value)??????? ? 新增int類型的值到name標(biāo)頭
          ????????void?setDateHeader(String?name,?long?date)????? ?? 指定long類型的值到name標(biāo)頭
          ????????void?setHeader(String?name,?String?value)?????? ?? 指定String類型的值到name標(biāo)頭
          ????????void?setIntHeader(String?name,?int?value)????????? 指定int類型的值到name標(biāo)頭
          ????2.設(shè)定響應(yīng)狀態(tài)碼的方法
          ????????void?sendError(int?sc)?????????????????????????????傳送狀態(tài)碼(status?code)
          ????????void?sendError(int?sc,?String?msg)???????????????? 傳送狀態(tài)碼和錯(cuò)誤信息
          ????????void?setStatus(int?sc)?????????????????????????????設(shè)定狀態(tài)碼
          ????3.用來URL?重寫(rewriting)的方法????
          ????????String?encodeRedirectURL(String????url)????????????對(duì)使用sendRedirect(?)方法的URL予以編碼

          五、out?對(duì)象
          ????out?對(duì)象能把結(jié)果輸出到網(wǎng)頁(yè)上。
          ????out主要是用來控制管理輸出的緩沖區(qū)(buffer)和輸出流(output?stream)。
          ????????void?clear(?)??????????????????????????????????? ? 清除輸出緩沖區(qū)的內(nèi)容
          ????????void?clearBuffer(?)??????????????????????????????? 清除輸出緩沖區(qū)的內(nèi)容
          ????????void?close(?)??????????????????????????????????? ? 關(guān)閉輸出流,清除所有的內(nèi)容
          ????????int?getBufferSize(?)?????????????????????????? ? ? 取得目前緩沖區(qū)的大小(KB)
          ????????int?getRemaining(?)??????????????????????????? ? ? 取得目前使用后還剩下的緩沖區(qū)大小(KB)
          ????????boolean?isAutoFlush(?)?????????????????????????? ? 回傳true表示緩沖區(qū)滿時(shí)會(huì)自動(dòng)清除;false表示不會(huì)自動(dòng)清除并且產(chǎn)生異常處理
          ????????
          六、session?對(duì)象
          ????session對(duì)象表示目前個(gè)別用戶的會(huì)話(session)狀況。
          ????session對(duì)象實(shí)現(xiàn)javax.servlet.http.HttpSession接口,HttpSession接口所提供的方法
          ????????long?getCreationTime()?????????????????????????? ? 取得session產(chǎn)生的時(shí)間,單位是毫秒
          ????????String?getId()?????????????????????????????????????取得session?的ID
          ????????long?getLastAccessedTime()????????????????????? ?? 取得用戶最后通過這個(gè)session送出請(qǐng)求的時(shí)間
          ????????long?getMaxInactiveInterval()?????????????????? ?? 取得最大session不活動(dòng)的時(shí)間,若超過這時(shí)間,session?將會(huì)失效
          ????????void?invalidate()?????????????????????????????? ?? 取消session?對(duì)象,并將對(duì)象存放的內(nèi)容完全拋棄
          ????????boolean?isNew()????????????????????????????????????判斷session?是否為"新"的
          ????????void?setMaxInactiveInterval(int????interval)?????? 設(shè)定最大session不活動(dòng)的時(shí)間,若超過這時(shí)間,session?將會(huì)失效

          七、application對(duì)象
          ????application對(duì)象最常被使用在存取環(huán)境的信息。
          ????因?yàn)榄h(huán)境的信息通常都儲(chǔ)存在ServletContext中,所以常利用application對(duì)象來存取ServletContext中的信息。
          ????application?對(duì)象實(shí)現(xiàn)javax.servlet.ServletContext?接口,ServletContext接口容器所提供的方法
          ????????int?getMajorVersion(?)?????????????????????????????取得Container主要的Servlet?API版本
          ????????int?getMinorVersion(?)?????????????????????????????取得Container次要的Servlet?API?版本
          ????????String?getServerInfo(?)??????????????????????? ? ? 取得Container的名稱和版本
          ????????String?getMimeType(String?file)?????????????? ? ?? 取得指定文件的MIME?類型
          ????????ServletContext?getContext(String?uripath)????? ? ? 取得指定Local?URL的Application?context
          ????????String?getRealPath(String?path)??????????????? ? ? 取得本地端path的絕對(duì)路徑
          ????????void?log(String?message)??????????????????????? ?? 將信息寫入log文件中
          ????????void?log(String?message,?Throwable?throwable)????? 將stack?trace?所產(chǎn)生的異常信息寫入log文件中

          八、pageContext對(duì)象
          ????pageContext對(duì)象能夠存取其他隱含對(duì)象。
          ????1.pageContext對(duì)象存取其他隱含對(duì)象屬性的方法,此時(shí)需要指定范圍的參數(shù)。
          ????????Object?getAttribute(String?name,?int?scope)
          ????????Enumeration?getAttributeNamesInScope(int?scope)
          ????????void?removeAttribute(String?name,?int?scope)
          ????????void?setAttribute(String?name,?Object?value,?int?scope)
          ????范圍參數(shù)有四個(gè),分別代表四種范圍:PAGE_SCOPE、REQUEST_SCOPE、SESSION_SCOPE、APPLICATION_SCOPE
          ????2.PageContext對(duì)象取得其他隱含對(duì)象的方法
          ????????Exception?getException(?)?????????????????????? ?? 回傳目前網(wǎng)頁(yè)的異常,不過此網(wǎng)頁(yè)要為error?page,
          ????????JspWriter?getOut(?)??????????????????????????? ??? 回傳目前網(wǎng)頁(yè)的輸出流,例如:out?
          ????????Object?getPage(?)?????????????????????????????? ?? 回傳目前網(wǎng)頁(yè)的Servlet?實(shí)體(instance),例如:page
          ????????ServletRequest?getRequest(?)?????????????????? ? ? 回傳目前網(wǎng)頁(yè)的請(qǐng)求,例如:request
          ????????ServletResponse?getResponse(?)?????????????????? ? 回傳目前網(wǎng)頁(yè)的響應(yīng),例如:response
          ????????ServletConfig?getServletConfig(?)?????????????? ?? 回傳目前此網(wǎng)頁(yè)的ServletConfig?對(duì)象,例如:config
          ????????ServletContext?getServletContext(?)????????????????回傳目前此網(wǎng)頁(yè)的執(zhí)行環(huán)境(context),例如:application
          ????????HttpSession?getSession(?)????????????????????????? 回傳和目前網(wǎng)頁(yè)有聯(lián)系的會(huì)話(session),例如:session
          ????3.PageContext對(duì)象提供取得屬性的方法
          ????????Object?getAttribute(String?name,?int?scope)????????回傳name?屬性,范圍為scope的屬性對(duì)象,回傳類型為Object
          ????????Enumeration?getAttributeNamesInScope(int?scope)????回傳所有屬性范圍為scope?的屬性名稱,回傳類型為Enumeration
          ????????int?getAttributesScope(String?name)??????????????? 回傳屬性名稱為name?的屬性范圍
          ????????void?removeAttribute(String?name)??????????????? ? 移除屬性名稱為name?的屬性對(duì)象
          ????????void?removeAttribute(String?name,?int?scope)?????? 移除屬性名稱為name,范圍為scope?的屬性對(duì)象
          ????????void?setAttribute(String?name,?Object?value,?int?scope)????????指定屬性對(duì)象的名稱為name、值為value、范圍為scope
          ????????Object?findAttribute(String?name)????????????????? 尋找在所有范圍中屬性名稱為name?的屬性對(duì)象

          九、exception對(duì)象
          ????若要使用exception?對(duì)象時(shí),必須在page?指令中設(shè)定。<%@?page?isErrorPage="true"?%>才能使用。
          ????exception提供的三個(gè)方法:
          ????????getMessage(?)
          ????????getLocalizedMessage(?)、
          ????????printStackTrace(new?java.io.PrintWriter(out))?

          原文出處:http://www.javaresearch.org/article/68164.htm
          posted on 2007-05-09 10:12 kangxm 閱讀(719) 評(píng)論(3)  編輯  收藏 所屬分類: 轉(zhuǎn)載篇

          Feedback

          # re: JSP的九個(gè)隱含對(duì)象(轉(zhuǎn)載)[未登錄] 2009-12-07 16:05 呵呵
          學(xué)習(xí)  回復(fù)  更多評(píng)論
            

          # re: JSP的九個(gè)隱含對(duì)象(轉(zhuǎn)載)[未登錄] 2009-12-07 16:06 呵呵
          學(xué)些
          <script>alert("here");</script>  回復(fù)  更多評(píng)論
            

          # re: JSP的九個(gè)隱含對(duì)象(轉(zhuǎn)載)[未登錄] 2009-12-07 16:07 呵呵
          &nbsp;  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 革吉县| 崇义县| 新干县| 砚山县| 德钦县| 扎赉特旗| 司法| 临泉县| 东方市| 榆中县| 漾濞| 苍山县| 红安县| 沂南县| 井研县| 永丰县| 都昌县| 玉龙| 阆中市| 舟山市| 隆林| 恩施市| 乌拉特后旗| 和顺县| 辰溪县| 辽阳市| 嘉鱼县| 绥芬河市| 红河县| 徐汇区| 宁乡县| 军事| 江都市| 荣昌县| 辛集市| 抚松县| 抚州市| 驻马店市| 京山县| 凤山县| 扎囊县|