成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

JSP中Servlet的Request與Response的用法與區別

瀏覽:242日期:2022-06-07 10:50:45

JSP中Servlet的Request與Response的用法與區別

簡介:Web服務器收到客戶端的http請求,會針對每一次請求,分別創建一個用于代表請求的request對象、和代表響應的response對象。request和response對象即然代表請求和響應,那我們要獲取客戶機提交過來的數據,只需要找request對象就行了。要向客戶機輸出數據,只需要找response對象就行了。

一,Request

Request代表請求對象,其中封裝了對請求中具有請求行、請求頭、實體內容的操作的方法,通過這個對象提供的方法,可以獲得客戶端請求的所有信息。

1. 作為容器

setAttribute(String name,Object o)將數據作為request對象的一個屬性存放到request對象中 
getAttribute(String name)獲取request對象的name屬性的屬性值 
removeAttribute(String name)     移除request對象的name屬性 
getAttributeNames()     獲取request對象的所有屬性名 

2. 獲得客戶端信息        

 getRequestURL()返回客戶端發出請求時的完整URL。 
getRequestURI()返回請求行中的資源名部分。 
getRemoteAddr()返回發出請求的客戶機的IP地址。 
getRemoteHost()返回發出請求的客戶機的完整主機名。 
getRemotePort()返回客戶機所使用的網絡端口號。 
getLocalAddr()返回WEB服務器的IP地址。 
getLocalName()返回WEB服務器的主機名。 
  getQueryString()返回請求行中的參數部分。 
getPathInfo()返回請求URL中的額外路徑信息。額外路徑信息是請求URL中的位于Servlet的路徑之后和查詢參數之前的內容,它以“/”開頭。 

3. 獲得客戶端請求頭  

getHeader(string name) 
getHeaders(String name) 
getHeaderNames() 

4. 獲得客戶端請求參數(客戶端提交的數據)

getParameter(String)方法(常用) 
getParameterValues(String name)方法(常用) 
getParameterNames()方法(不常用) 
getParameterMap()方法(編寫框架時常用) 

5.request接收表單提交中文參數亂碼問題解決

(1)get方式提交表單:

對于以get方式傳輸的數據,request即使設置了以指定的編碼接收數據也是無效的(至于為什么無效我也沒有弄明白),默認的還是使用ISO8859-1這個字符編碼來接收數據,客戶端以UTF-8的編碼傳輸數據到服務器端,而服務器端的request對象使用的是ISO8859-1這個字符編碼來接收數據,服務器和客戶端溝通的編碼不一致因此才會產生中文亂碼的。

解決辦法:

1) 在接收到數據后,先獲取request對象以ISO8859-1字符編碼接收到的原始數據的字節數組,然后通過字節數組以指定的編碼構建字符串,解決亂碼問題。

String name = request.getParameter("name");//接收數據
     name =new String(name.getBytes("ISO8859-1"), "UTF-8") ;//獲取request對象以ISO8859-1字符編碼接收到的原始數據的字節數組,然后通過字節數組以指定的編碼構建字符串,解決亂碼問題

     2) server.xml中配置

  URIEncoding=utf-8

(2)post方式提交表單:

之所以會產生亂碼,就是因為服務器和客戶端溝通的編碼不一致造成的,因此解決的辦法是:在客戶端和服務器之間設置一個統一的編碼,之后就按照此編碼進行數據的傳輸和接收。

 request.setCharacterEncoding("UTF-8");

6.Request對象實現請求轉發

request.getRequestDispatcher("/test.jsp").forward(request, response); 
request.getRequestDispatcher("/test.jsp").include(request, response); 
調用forward()方法后,原先存放在HttpResponse對象中的內容將會自動被清除 
調用include()方法后,原先存放在HttpResponse對象中的內容將不會被清除,內容追加 

二,Response

Response代表響應,于是響應消息中的狀態碼、響應頭、實體內容都可以由它進行操作

1. 向客戶端(瀏覽器)發送數據的相關方法

getOutputStream()
getWriter()

2.向客戶端(瀏覽器)發送響應頭的相關方法

addDateHeader() 
addHeader() 
addIntHeader() 
containsHeader() 
      setDateHeader() 
setHeader() 
setIntHeader() 

例如:  

  response.setHeader("content-type", "text/html;charset=UTF-8"); 

3.向客戶端(瀏覽器)發送響應狀態碼的相關方法--setStatus()

實例代碼:

private void downloadFileByOutputStream(HttpServletResponse response) 
      throws FileNotFoundException, IOException { 
    //1.獲取要下載的文件的絕對路徑 
    String realPath = this.getServletContext().getRealPath("/download/1.JPG"); 
    //2.獲取要下載的文件名 
    String fileName = realPath.substring(realPath.lastIndexOf("\\")+1); 
    //3.設置content-disposition響應頭控制瀏覽器以下載的形式打開文件 
    response.setHeader("content-disposition", "attachment;filename="+fileName); 
    //4.獲取要下載的文件輸入流 
    InputStream in = new FileInputStream(realPath); 
    int len = 0; 
    //5.創建數據緩沖區 
    byte[] buffer = new byte[1024]; 
    //6.通過response對象獲取OutputStream流 
    OutputStream out = response.getOutputStream(); 
    //7.將FileInputStream流寫入到buffer緩沖區 
    while ((len = in.read(buffer)) > 0) { 
    //8.使用OutputStream將緩沖區的數據輸出到客戶端瀏覽器 
      out.write(buffer,0,len); 
    } 
    in.close(); 
  } 

它們的區別:

其實從字面上我們就可以知道他們倆的區別在于一個是請求(request),而另一個是響應(response),servlet作為服務端,請求便是來自瀏覽器的請求,響應便是服務器對瀏覽器的響應。在你想獲取瀏覽器請求的數據時,我們就要用request,而在我們要向瀏覽器響應數據或頁面時,我們就要用到response。

request 是請求的載體,它附帶著,請求的參數,ip,cookie,表單,字符編碼,或者上傳文件。
你可以通過request去獲得你所需要的信息。

response是響應的載體,你可以設置,表頭,報文,響應文件類型,字符編碼,response,自帶一個輸出流,當你需要將一個頁面或者一個文件傳到客戶端時,你可以通過這個流來進行操作

希望通過本文能幫助到大家,如有疑問請留言或者到本站社區交流討論,感謝閱讀,謝謝大家對本站的支持!

標簽: JSP
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久综合综合久久综合| 久久er99热精品一区二区| 9191国产精品| 色综合久久中文综合久久牛| 欧美一级午夜免费电影| 美女网站一区二区| 99精品免费视频| 国产欧美日韩卡一| 99视频一区二区| 精品国产乱码久久久久久影片| 麻豆久久久久久久| 久久亚洲色图| 日本网站在线观看一区二区三区| 亚洲少妇在线| 亚洲欧美一区二区三区极速播放| 亚洲天堂偷拍| 亚洲欧洲av一区二区三区久久| 亚洲午夜伦理| 亚洲激情网站免费观看| 国产欧美二区| 天天影视涩香欲综合网| 亚洲欧美精品| 亚洲无人区一区| 久久永久免费| 韩国三级中文字幕hd久久精品| 麻豆免费看一区二区三区| 欧美色视频在线观看| 久久国产人妖系列| 91精品国产手机| 国产成+人+日韩+欧美+亚洲| 夜夜嗨一区二区| 亚洲国产一区二区三区青草影视| 香蕉亚洲视频| 亚洲18女电影在线观看| 91国偷自产一区二区开放时间| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美亚洲愉拍一区二区| 激情图片小说一区| 精品国产三级电影在线观看| 欧美福利电影在线观看| 国产精品九色蝌蚪自拍| 一区二区av| 日韩综合在线视频| 欧美日韩国产一二三| 丁香啪啪综合成人亚洲小说| 久久九九国产精品| 亚洲激情另类| 蜜桃av一区二区| 日韩一级二级三级精品视频| 欧美在线高清| 亚洲一级二级在线| 性色一区二区| 久久精品国产澳门| 欧美大白屁股肥臀xxxxxx| 91啪亚洲精品| ●精品国产综合乱码久久久久| 国产欧美69| 蜜臀av性久久久久av蜜臀妖精| 欧美一区二区精品久久911| 91日韩一区二区三区| 有码一区二区三区| 欧美色成人综合| www.亚洲人| 伊人性伊人情综合网| 欧美图片一区二区三区| 波多野结衣欧美| 自拍偷自拍亚洲精品播放| 色婷婷久久久亚洲一区二区三区 | 国产精品一区免费视频| 国产欧美精品国产国产专区| 国产精品免费一区二区三区在线观看| 久久爱另类一区二区小说| 精品国产露脸精彩对白| 亚洲高清视频一区| 免费看精品久久片| 久久色在线视频| 国产精品美女久久久| 国产在线精品一区在线观看麻豆| 国产三区在线成人av| 久久国产88| 成人a区在线观看| 亚洲国产精品久久不卡毛片 | 欧美电影在哪看比较好| 欧美暴力喷水在线| 五月天一区二区| 日韩欧美国产麻豆| 亚洲欧洲精品一区二区| 国产一区二区三区在线观看精品 | 玉米视频成人免费看| 在线播放日韩导航| 1000部精品久久久久久久久| 精品午夜一区二区三区在线观看| 日本一区二区成人| 欧美视频完全免费看| 国精品一区二区| 免费高清视频精品| 亚洲欧洲另类国产综合| 91精选在线观看| 国产伦精品一区二区三区四区免费 | 欧美xxxxxxxx| 亚洲免费婷婷| 91女神在线视频| 免费三级欧美电影| 中文字幕亚洲欧美在线不卡| 91麻豆精品国产91久久久更新时间| 亚洲国产一区二区精品专区| 国产一区 二区| 亚洲一区在线观看免费| 久久午夜色播影院免费高清| 色哟哟精品一区| 国语对白精品一区二区| 免费一区视频| 国产综合精品| 国产91精品一区二区麻豆亚洲| 香蕉久久夜色精品国产使用方法 | 欧美一区日本一区韩国一区| 国产精品一区毛片| 欧美一区91| 国产麻豆视频精品| 亚洲成人一二三| 国产欧美精品一区二区三区四区| 欧美日韩一区二区在线视频| 中文亚洲免费| 欧美一区影院| 国产乱色国产精品免费视频| 亚洲综合免费观看高清完整版| 日韩电影免费在线看| 中文字幕亚洲区| 欧美精品一区二| 在线综合+亚洲+欧美中文字幕| 性xx色xx综合久久久xx| 国内一区二区在线视频观看| 成人av手机在线观看| 国产在线精品一区二区三区不卡 | 久久激情一区| 亚洲精品黄色| 91丝袜高跟美女视频| 久久精品国产精品亚洲红杏| 亚洲国产你懂的| 中文字幕欧美激情| 精品卡一卡二卡三卡四在线| 欧美日韩精品综合在线| 久久av一区二区| 亚洲美女91| 亚洲一级黄色| 欧美日韩国产成人精品| 成人一级黄色片| 国产在线观看一区二区| 麻豆久久一区二区| 免费一级欧美片在线观看| 偷偷要91色婷婷| 亚洲国产毛片aaaaa无费看| 亚洲三级理论片| 国产精品色噜噜| 国产亚洲成av人在线观看导航 | 一区二区三区在线观看动漫| 国产精品无圣光一区二区| 精品99一区二区三区| 天天影视色香欲综合网老头| 亚洲图片欧美色图| 亚洲影院久久精品| 一个色综合av| 一级特黄大欧美久久久| 一区二区欧美国产| 一区二区三区不卡视频在线观看| 亚洲色图欧美激情| 亚洲精品视频一区| 一区二区三区中文字幕| 亚洲精品视频观看| 一区二区三区在线不卡| 一区二区三区四区精品在线视频| 中文字幕永久在线不卡| 中文字幕av一区二区三区高| 国产精品美女久久久久久| 中文字幕欧美一| 亚洲精品国产精华液| 亚洲免费高清视频在线| 亚洲欧美一区二区三区久本道91| 亚洲欧洲一区二区三区| 国产精品久久久久久久久晋中| 中文av一区特黄| 一区二区中文视频| 亚洲精品乱码久久久久久久久| 亚洲精品视频一区| 天天操天天干天天综合网| 日本成人超碰在线观看| 男女男精品视频| 国产一区二区久久| 欧美午夜一区| 99亚洲伊人久久精品影院红桃| 狠狠入ady亚洲精品| 黑丝一区二区三区| 一本色道久久综合一区| 美女亚洲精品| 日本乱人伦aⅴ精品| 欧美久久久久中文字幕| 精品国产一区二区三区忘忧草 | 亚洲国产合集| av不卡在线| 色婷婷综合激情|