亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

JSP內置對象(上)

2019-11-14 23:09:06
字體:
來源:轉載
供稿:網友
jsp內置對象(上)

在JSP中為了簡化頁面的開發提供了一些內置的對象。這些對象不需要由JSP的編寫者通過new關鍵字實例化,他們都由容器實現和管理,在所有的JSP頁面中都可以使用內置對象。

JSP中共有9大內置對象:

  1. out對象
  2. requset對象
  3. response對象
  4. session對象
  5. pageContext對象
  6. application對象
  7. config對象
  8. page對象
  9. exception對象

JSP內置對象(下):http://wxmimperio.coding.io/?p=329

PS:

【web對象的請求響應模式】

1.用戶從客戶端發送HTTP請求(request)到web服務器端

2.服務器給用戶做相應的HTTP響應(response)返回客戶端

【表單提交的兩種方式:get and post】

1.get:以明文的方式通過URL提交數據,數據在URL中可以看到。提交的數據最多不超過2kb。安全性比較低但效率比post方式高,適合提交數據量不大,安全性不高的數據。比如:搜索、查詢

2.post:將用戶提交的信息封裝在HTML HEADER內。適合提交數據量大,安全性高的用戶信息。比如:注冊、修改、上傳


1.out對象

out對象被封裝成javax.servlet.jsp.JspWriter接口,主要用來向客戶端輸出數據,代表輸出流的對象。

常用的方法:

  • out.PRint()、out.println():向客戶端打印字符串
  • out.clear():清除緩沖區里的數據,但不會把數據輸出到客戶端,如果在flush之后調用會拋出異常
  • out.flush():輸出緩沖區里的數據
  • out.clearBuffer():清除緩沖區里的數據,并把數據輸出到客戶端,如果在flush之后調用不會拋出異常
  • out.getBufferSize():獲得緩沖區大小
  • out.getRemaining():獲得緩沖區剩余空間大小
  • out.close():關閉輸出流
  • out.isAutoFlush():返回布爾值,判斷是否為自動清除緩存

代碼:

  • <body>
  • println方法:<%out.println("打印輸出");%><br>
  • getBufferSize方法:緩沖區大小=<%=out.getBufferSize()%><br>
  • getRemaining方法:緩沖區剩余大小=<%=out.getRemaining()%><br>
  • isAutoFlush方法:是否自動清除緩沖區:<%=out.isAutoFlush()%><br>
  • clear方法:<%out.close();%><br>
  • <%--
  • clearBuffer方法:<%out.clearBuffer();%><br>
  • flush方法:<%out.flush();%><br>
  • close方法:<%out.close();%><br>
  • --%>
  • </body>

2.request對象

request對象代表請求對象,他被封裝成HttpServletRequest接口。通過getParameter方法可以得到requset的參數,通過get、post、head等方法可以得到request的類型,通過Cookies、Referer等可以得到請求的HTTP頭。來自客戶端的請求經Servlet容器處理后,有request對象進行封裝,他作為jspServlet()方法的一個參數由容器傳遞給JSP頁面。

常用的方法:

  • getParamter(String name):獲得客戶端傳給服務器端的參數值,參數由name指定
  • getParameterValues(String name):獲得指定參數的所有值,參數由name指定
  • getProtocol():獲取客戶端向服務器端傳送數據所依據的協議類型及版本號
  • getServerName():獲取服務器的名字
  • getServerPath():獲取客戶端所請求的腳本文件的路徑
  • getServerPort():獲取服務器的端口號
  • getContentLength():返回請求的長度,如果長度不確定,返回-1
  • getCharacterEncoding():返回請求中的編碼方式
  • getLocalAddr():返回接收到請求的網絡接口的ip地址,這個方法是在Servlet 2.4規范中新增的方法
  • getLocalName():返回接收到請求的IP接口的主機名,這個方法是在Servlet 2.4規范中新增的方法
  • setAttribute(String name,java.lang.Object objt):儲存此請求中的屬性
  • getAttribute(String name):返回由name指定的屬性,如果此屬性不存在,則返回一個null值

代碼:

requestForm.jsp

  • <formname="requsetFrom"action="requestObject.jsp"method="post">
  • <table>
  • <tr>
  • <td>用戶名:</td>
  • <td><inputtype="text"name="username"></td>
  • </tr>
  • <tr>
  • <td>興趣:</td>
  • <td>
  • <inputtype="checkbox"name="favorite"value="basketball">籃球
  • <inputtype="checkbox"name="favorite"value="music">音樂
  • <inputtype="checkbox"name="favorite"value="football">足球
  • </td>
  • </tr>
  • <tr>
  • <td><inputtype="submit"value="提交"></td>
  • </tr>
  • </table>
  • </form>

requestObject.jsp

  • <body>
  • <%
  • /*解決中文亂碼問題,但不能解決用URL傳遞中文的亂碼*/
  • request.setCharacterEncoding("utf-8");
  • /*調用setAttribute方法*/
  • request.setAttribute("passWord","123456789");
  • %>
  • 用戶名:<%=request.getParameter("username")%><br>
  • 興趣:
  • <%
  • if(request.getParameterValues("favorite")!=null){
  • String[]favorites=request.getParameterValues("favorite");
  • for(inti=0;i<favorites.length;i++){
  • out.println(favorites[i]+"&nbsp;&nbsp;");
  • }
  • }
  • %><br>
  • 服務器版本號:<%=request.getProtocol()%><br>
  • 服務器名字:<%=request.getServerName()%><br>
  • 客戶端請求的文件路徑:<%=request.getServletPath()%><br>
  • 服務器端口號:<%=request.getServerPort()%><br>
  • 請求長度:<%=request.getContentLength()%><br>
  • 請求中編碼方式:<%=request.getCharacterEncoding()%><br>
  • 請求中網絡接口的IP:<%=request.getLocalAddr()%><br>
  • 請求中的主機名:<%=request.getLocalName()%><br>
  • 獲取指定屬性:<%=request.getAttribute("password")%><br>
  • </body>


3.response對象

response被包裝成HttpServletResponse接口,他封裝了JSP產生的響應,然后被發送到客戶端以響應客戶的請求。和request對象一樣,他由容器生成,作為jspService()方法的參數被傳入JSP。他具有頁面作用域,即訪問一個頁面時,該頁面的response對象只能對該頁面有效,其他頁面的response對象對當前頁面無效。

常用的方法:

  • flushBuffer():強制把當前緩沖區的內容發送到客戶端
  • getBufferSize():返回緩沖區大小
  • addCookie(Cookie cook):添加一個Cookie對象,用來保存客戶端信息
  • sendError(int):向客戶端發送錯誤的信息
  • sendRedirect(String location):把響應發送到另一個位置進行處理
  • setContentType(StringContentType):設置響應的MIME類型
  • getWriter():返回一個可以向客戶端輸出字符的對象
  • getCharacterEncoding():返回響應所用的編碼類型

PS:

【請求重定向】

客戶端行為,response.sendRedirect(),從本質上講等同于發出兩次請求,前一次請求對象不會被保存,地址欄的URL地址會發生改變

【請求轉發】

服務器行為,requset.getRequestDispatcher().forward(request,response);是一次請求,轉發后請求對象會保存,地址欄的URL地址不會發生變化

代碼:

  • <body>
  • 緩沖區大小=<%=response.getBufferSize()%><br>
  • <%--錯誤=<%response.sendError(404);%><br>--%>
  • 響應的編碼類型=<%=response.getCharacterEncoding()%><br>
  • <%
  • response.setContentType("text/html;charset=utf-8");//設置響應的MIME類型
  • /*response生成的輸出流優先級高于內置對象out,先進行打印輸出*/
  • PrintWriterouter=response.getWriter();//獲得輸出流
  • outer.println("response生成的輸出流<br>");
  • /*使用了一個Cookie,每次訪問此頁面時,就通過requset對象把客戶端的所有Cookie獲取過來*/
  • Cookie[]cookies=request.getCookies();
  • Cookiecookie_response=null;
  • Listlist=Arrays.asList(cookies);
  • Iteratorit=list.iterator();
  • while(it.hasNext()){
  • Cookietemp=(Cookie)it.next();
  • if(temp.getName().equals("_access_time"));{
  • cookie_response=temp;
  • break;
  • }
  • }
  • if(cookie_response!=null){
  • outer.println("訪問時間="+cookie_response.getValue()+"<br>");
  • cookie_response.setValue(newDate().toString());
  • }else{
  • cookie_response=newCookie("_access_time",newjava.util.Date().toString());
  • }
  • response.addCookie(cookie_response);
  • response.flushBuffer();
  • %>
  • </body>

4.session對象

session對象用來保存每個用戶信息,以便跟蹤每個用戶的操作狀態。其中,session信息保存在容器中,session的ID保存在客戶端的Cookie中。session表示客戶端與服務器的一次會話,web中的session指的是用戶在瀏覽某個網站時,從進入網站到瀏覽器關閉所經過的這段時間他表示特定的一段時間,在服務器內存中保存著不同用戶的session,session對象在第一個jsp頁面被裝載時自動創建,完成回話管理。

【生命周期】

從一個客戶打開瀏覽器并連接到服務器開始,到客戶關閉瀏覽器離開服務器結束,稱為一個會話。當一個用戶訪問一個服務器時,可能會在服務器的幾個頁面之間切換,服務器應當通過某種辦法知道這是一個客戶,就需要session對象。session對象是HttpSession類的一個實例.

創建:

當客戶端第一

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩欧美视频一区二区三区| 日韩国产在线看| 亚洲高清色综合| 国产福利精品视频| 欧洲亚洲免费视频| 国产精品视频区| 久久久久国产精品一区| 国产98色在线| 精品视频—区二区三区免费| 亚洲码在线观看| 国产成人在线一区| 国产成人一区二区| 亚洲自拍偷拍在线| 日韩风俗一区 二区| 欧美大片在线看| 91欧美视频网站| 欧美日韩国产色视频| 日韩在线欧美在线| 理论片在线不卡免费观看| 成人av在线亚洲| 九九久久久久99精品| 在线中文字幕日韩| 国产在线不卡精品| 久久免费精品日本久久中文字幕| 97香蕉久久夜色精品国产| 久久亚洲精品小早川怜子66| 欧美中文字幕在线视频| 国产精品丝袜高跟| 日韩av一区在线观看| 91亚洲国产成人久久精品网站| 中文字幕日韩欧美精品在线观看| 国产精品第二页| 国产精品久久久久7777婷婷| 亚洲国产小视频在线观看| 亚洲美腿欧美激情另类| 欧美午夜精品久久久久久久| 亚洲视频在线免费看| 亚洲综合色av| 亲子乱一区二区三区电影| 欧美性极品xxxx做受| 久久亚洲一区二区三区四区五区高| 亚洲成人精品视频| 国产精品欧美一区二区三区奶水| 欧美日韩免费区域视频在线观看| 日韩精品电影网| 亚洲午夜性刺激影院| 国产欧美日韩免费看aⅴ视频| 国产精品流白浆视频| 欧美综合国产精品久久丁香| 国模私拍一区二区三区| 浅井舞香一区二区| 欧美日韩另类在线| 欧美风情在线观看| 成人福利网站在线观看| 欧美一级淫片aaaaaaa视频| 国产亚洲精品日韩| 亚洲一区国产精品| 亚洲成人精品视频在线观看| 91精品国产综合久久香蕉的用户体验| 午夜精品在线观看| 欧美另类在线播放| 成人国产亚洲精品a区天堂华泰| 亚洲第一国产精品| 欧美日韩在线一区| 日韩中文字幕免费视频| 欧美精品精品精品精品免费| 91经典在线视频| 最近中文字幕2019免费| 欧美专区第一页| 欧美高清视频在线| 亚洲色图第一页| 国产欧美精品日韩| 欧美激情一二区| 国产91成人在在线播放| 成人免费高清完整版在线观看| 丝袜美腿亚洲一区二区| 日韩精品在线观看视频| 欧美成年人网站| 亚洲黄色免费三级| 亚洲欧洲日韩国产| 久久99久国产精品黄毛片入口| 亚洲精品国产精品国自产观看浪潮| 中文字幕亚洲一区二区三区五十路| 亚洲第一在线视频| 成人黄色大片在线免费观看| 色婷婷成人综合| 国产ts一区二区| 日韩欧美成人区| 欧美电影在线观看高清| 2021久久精品国产99国产精品| 久久久av亚洲男天堂| 国产亚洲精品一区二区| 中文字幕在线亚洲| 午夜精品在线观看| 亚洲成人精品久久久| 97国产精品久久| 亚洲一区二区久久久| 麻豆国产精品va在线观看不卡| 国产成人在线一区| 欧美成人午夜视频| 国产精品无av码在线观看| 久久99亚洲精品| 91视频-88av| 日韩电影视频免费| 亚洲欧美日韩图片| 国产999精品| 国产成人精品最新| 久久久久久国产精品三级玉女聊斋| 97精品国产91久久久久久| 亚洲精品福利在线观看| 亚洲999一在线观看www| 91精品国产91| 日韩欧美亚洲综合| 亚洲另类图片色| 亚洲国产欧美一区二区三区同亚洲| 久久久久久久999精品视频| 曰本色欧美视频在线| 国产精品久久久久av免费| 亚洲a级在线播放观看| 成人黄色免费片| 国产精品久久久久久av福利软件| 亚洲欧美国产另类| 欧美一级在线播放| 国产午夜精品全部视频在线播放| 成人欧美在线视频| 欧美电影免费观看| 7777精品视频| 精品国产一区久久久| 欧美裸体xxxxx| 久久综合伊人77777尤物| 91中文在线视频| 日韩中文字幕精品视频| 色中色综合影院手机版在线观看| 久久久久久久久久久人体| 亚洲欧美日韩综合| 成人福利网站在线观看11| 日韩av在线不卡| 国产精品第二页| 亚洲成av人影院在线观看| 亚洲激情视频在线| 色综合91久久精品中文字幕| 国产精品视频免费在线观看| 亚洲女同精品视频| 亚洲国产福利在线| 91精品国产高清| 97免费视频在线| 亚洲一区第一页| 亚洲天堂网站在线观看视频| 国产精品成人品| 日韩中文字幕在线观看| 精品国内产的精品视频在线观看| 宅男66日本亚洲欧美视频| 日韩av资源在线播放| 91视频国产精品| 久久成年人免费电影| 国产一区二区黑人欧美xxxx| 国产精品嫩草视频| 伊人久久久久久久久久久久久| 国产日产欧美a一级在线| 色噜噜国产精品视频一区二区| 欧美福利小视频| 国产精品99久久久久久白浆小说| 亚洲综合中文字幕68页| 2018日韩中文字幕|