国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 甘肃省| 盱眙县| 江门市| 蕲春县| 个旧市| 邯郸市| 龙山县| 四子王旗| 米易县| 钟山县| 山东| 嘉定区| 宁城县| 富锦市| 江西省| 广水市| 辉县市| 乐安县| 溧水县| 温泉县| 江北区| 揭东县| 西丰县| 河北省| 哈密市| 社旗县| 海兴县| 平度市| 广汉市| 瓮安县| 四会市| 玉山县| 南澳县| 梁平县| 汤阴县| 精河县| 二连浩特市| 齐河县| 乡宁县| 平谷区| 炎陵县|