暑假學(xué)習(xí)打卡3

服務(wù)器每次收到請(qǐng)求都會(huì)開辟新線程,把客戶端請(qǐng)求數(shù)據(jù)放到request,還會(huì)創(chuàng)建response給客戶端發(fā)送響應(yīng)。

HttpServletResponse:常用方法setHeader(String,String),setStatus(int),

重定向:setHeader("Location","requesturi")&setStatus(302)? ? sendRedirect(String)

刷新:setHeader("Refresh","3;requesturi")

getWriter和getOutputStream方法互斥,一起用會(huì)拋出IllegalStateException

HttpServletRequest:常用方法? getRemoteAddr(),getHeader(String)

獲取請(qǐng)求URL? http://localhost:8080/day10/AServlet?username=zhangsn&password=123

getScheme() 協(xié)議 http? ? ? ? ????????getServerName() 服務(wù)器名 localhost? ? ? ? getServletPort端口 8080? ????????? getContextPath()項(xiàng)目名/day10? ? ? ? ? ? ? ? getServletPath()Servlet路徑/AServelt? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? getQueryString()參數(shù)username=zhangsn&password=123? ? ? ? ? ? getRequestURI():/項(xiàng)目名+/servlet路徑? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? getRequestURL():不含參數(shù)的全部

獲取請(qǐng)求參數(shù):getParameter(String)單個(gè),getParamaterValues (checkbox)? ? ? ? getParameterMap()所有請(qǐng)求參數(shù)

***Map hobby=request.getParameterMap();

for (String s1 : hobby.keySet()) {

String[] value=hobby.get(s1);

out.print(s1+":"+Arrays.toString(value));}

請(qǐng)求轉(zhuǎn)發(fā),請(qǐng)求包含區(qū)別:轉(zhuǎn)發(fā)forward 包含include。轉(zhuǎn)發(fā)AServlet留頭不留體,包含AServlet留頭留體.


請(qǐng)求轉(zhuǎn)發(fā)和重定向區(qū)別:

1.請(qǐng)求轉(zhuǎn)發(fā)一次請(qǐng)求一次響應(yīng)? ? ? ? 2.請(qǐng)求轉(zhuǎn)發(fā)地址欄不變化? ? ? ? 3.request.getRequestDispatcher("/Servlet名").forward(req,res) 只能轉(zhuǎn)發(fā)到本項(xiàng)目? ? ? ?4.請(qǐng)求轉(zhuǎn)發(fā)是服務(wù)器行為,只需給出Servlet路徑

請(qǐng)求轉(zhuǎn)發(fā)


1.重定向2次請(qǐng)求2次響應(yīng)? ? ? ? 2.重定向后地址欄會(huì)發(fā)生改變? ? ? ? 3.response.sendRedict("/項(xiàng)目名/servlet路徑")或可以重定向到http網(wǎng)頁? ? ? ?

重定向


編碼問題:

response.setCharsetEncoding("utf-8")表示以u(píng)tf-8的編碼編寫

response.setHeader("Content-Type":"text/html;charset=utf-8")告訴瀏覽器服務(wù)器使用的是什么編碼

***response.setContentType("text/html;charset=utf-8")


post請(qǐng)求:在獲取參數(shù)前調(diào)用request.setCharacterEncoding("utf-8")

get請(qǐng)求:String name=request.getParamater("name");? ? byte[] bytes=name.getBytes["iso8859-1"]; name=new String(bytes,"utf-8")

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容