国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Servlet中的Requset和Response的學(xué)習(xí) --------web部分第十一天

2019-11-10 18:04:25
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

Servlet中的Requset和Response的學(xué)習(xí) ——–web部分第十一天

小知識(shí)點(diǎn)

服務(wù)器每次收到請(qǐng)求,都會(huì)開辟一個(gè)新的線程。服務(wù)器把客戶端請(qǐng)求的數(shù)據(jù)封裝到request中,把要做出的響應(yīng)放到response中。Apcahe網(wǎng)站中有方便開發(fā)使用的jar包,來(lái)簡(jiǎn)化開發(fā)。

1. Response的介紹

ServletResponse -與協(xié)議無(wú)關(guān)的類型

HttpServletResponse - 和http協(xié)議相關(guān)的類型

傳輸狀態(tài)碼,方法如下

sendError(int sc)sendError(int sc String msg)sendStatus(int sc)

響應(yīng)頭:Content—Type,Refresh,Location等等,以下響應(yīng)頭分別適用于單值或多值,還可以適用于加類型的響應(yīng)頭。

setHeader(String name , String value) ;addHeader(String name , String value) ;setIntHeader(String name , int value) ;addIntHeader(String name , int value) ;setDateHeader(String name , long value) ; 適用于單值的毫秒類型的響應(yīng)頭。

addDateHeader(String name , long value) ;

通過(guò)響應(yīng)頭的設(shè)置可以完成,定向轉(zhuǎn)發(fā),定時(shí)刷新,禁用緩存的行為。

標(biāo)簽可以代替響應(yīng)頭。

響應(yīng)體:通常是html、也可以是圖片

ServletOutputStream ,用來(lái)向客戶端發(fā)送字節(jié)數(shù)據(jù)PRintWriter , 用來(lái)向客戶端發(fā)送字符數(shù)據(jù)!需要設(shè)置編碼。設(shè)置編碼為response.setCharacterEncoding(“utf-8”) ;兩個(gè)流不能同時(shí)用。

重新定向的方法 sendRedirect(“地址信息”) ;

2. Request的介紹

封裝了所有客戶端的請(qǐng)求數(shù)據(jù)。

獲取常用信息

獲取客戶機(jī)的請(qǐng)求方式 , request.getMethod() ;獲取客戶機(jī)的ip , request.getRemoteAddr() ;

獲取請(qǐng)求頭

String getHeader(String name)int getIntHeader(String name)long getDateHeader(String name)

Enumeration getHeaders(String name) 獲取多值請(qǐng)求頭

可以通過(guò)獲取User-Agent識(shí)別用戶的瀏覽器和系統(tǒng)信息。

獲取請(qǐng)求的URL

例: http://localhost:8080/myproject/MyServlet?username=xxxx&passWord=yyyyy

String getScheme() ; 獲取協(xié)議 : http

String getServerName() ; 獲取服務(wù)器名 : localhostString getServerPort() ; 獲取服務(wù)器端口 : 8080String getContextPath() ; 獲取項(xiàng)目名稱 : /myprojectString getServletPath() ; 獲取servlet部分 : /MyServletString getQueryString() ; 獲取參數(shù)部分 : username=xxxx&password=yyyyyString getRequestURI() ; 獲取請(qǐng)求URI,等于項(xiàng)目名加Servlet路徑 : /myproject/MyServletString getRequestURL() ; 獲取請(qǐng)求URL,等于不包含參數(shù)的整個(gè)請(qǐng)求路徑 : http://localhost:8080/myproject/MyServlet

獲取請(qǐng)求參數(shù)

String getParameter(String name) ; 獲取指定名稱的參數(shù)String[] getParameterValues(String name) ; 適用于獲取多值的指定名稱的參數(shù)Enumeration getParameterNames() ; 獲取所有請(qǐng)求參數(shù)的名稱Map

3. 編碼

URL編碼

是客戶端與服務(wù)器之間傳遞參數(shù)的一種方式。URL編碼需要先指定一種字符編碼,把字符串解碼后,得到byte[] ,經(jīng)過(guò)處理顯示出來(lái)Post請(qǐng)求默認(rèn)使用URL編碼,tomcat會(huì)自動(dòng)使用用URL解碼。URL編碼: String username = URLEncoder.encode(username , “utf-8”) ;URL解碼: String username = URLDecoder.decode(username , “utf-8”) ;
上一篇:杭電1005

下一篇:臺(tái)階問(wèn)題

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 海口市| 永年县| 阳高县| 巴楚县| 朔州市| 张家界市| 扬中市| 南宁市| 扬中市| 南充市| 关岭| 泰兴市| 卢龙县| 观塘区| 泸水县| 红安县| 醴陵市| 武城县| 比如县| 泉州市| 广西| 汶上县| 银川市| 宣恩县| 墨玉县| 沅陵县| 略阳县| 康平县| 临颍县| 措美县| 平阴县| 沙田区| 鄂伦春自治旗| 怀宁县| 惠东县| 保山市| 博爱县| 红桥区| 富阳市| 岳阳市| 彭山县|