request與JavaWeb response的對象原理的深入淺析?針對這個(gè)問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
創(chuàng)新互聯(lián)成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元召陵做網(wǎng)站,已為上家服務(wù),為召陵各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575HttpServletResponse:
HttpServletResponse對象服務(wù)器的響應(yīng)。這個(gè)對象中封裝了向客戶端發(fā)送數(shù)據(jù)、發(fā)送響應(yīng)頭,發(fā)送響應(yīng)狀態(tài)碼的方法。
字符編碼格式:
方法一:
// 設(shè)置response使用的碼表,控制response向?yàn)g覽器寫出數(shù)據(jù)的碼表
response.setCharacterEncoding("UTF-8");
// 指定瀏覽器打開客戶端發(fā)送數(shù)據(jù)的碼表
response.setHeader("content-type", "text/html;charset=UTF-8");
方法二:
response.setContentType("text/html;charset=UTF-8");
用refresh控制瀏覽器定時(shí)刷新
response.setHeader("refresh","3;url='/項(xiàng)目名/網(wǎng)頁名'");//3代表3s以后刷新
用expires頭控制瀏覽器緩存
response.setDateHeader("expires",System.currentTimeMillis()+1000*3600);
請求重定向
response.sendRedirect("地址");
response細(xì)節(jié)
HttpServletRequest
HttpServletRequest對象代表客戶端的請求,當(dāng)客戶端通過HTTP協(xié)議訪問服務(wù)器時(shí),HTTP請求頭中的所有信息都封裝在這個(gè)對象中,開發(fā)人員通過這個(gè)對象的方法,可以獲得客戶這些信息。
獲得客戶機(jī)信息:
獲得客戶機(jī)請求頭
getHeader(String name)
getHeaders()
getHeaderNames()
獲得客戶機(jī)請求參數(shù)(客戶端提交的數(shù)據(jù))
getParameter(String name)
getParameterValues(String name)
getParameterNames()
getParameterMap()
request亂碼
// post提交亂碼
request.setCharacterEncoding("UTF-8");
// get提交亂碼
String username = request.getParameter("username");
username = new String(username.getBytes("iso8859-1"), "UTF-8");
request頁面轉(zhuǎn)發(fā)
request.getRequestDispatcher("地址").forward(request,response);
request對象同時(shí)也是一個(gè)域?qū)ο?,開發(fā)人員通過request對象在實(shí)現(xiàn)轉(zhuǎn)發(fā)時(shí),把數(shù)據(jù)通過request對象帶給其它web資源處理。
setAttribute(String name,Object obj)
getAttribute(String name)
removeAttribute(String name)
getAttributeNames()
注意
include方法
request.getRequestDispatcher("地址").include(request,response);
RequestDispatcher.include方法用于將RequestDispatcher對象封裝的資源內(nèi)容作為當(dāng)前響應(yīng)內(nèi)容的一部分包含進(jìn)來,從而實(shí)現(xiàn)可編程的服務(wù)器端包含功能。
被包含的Servlet程序不能改變響應(yīng)消息的狀態(tài)碼和響應(yīng)頭,如果它里面存在這樣的語句,這些語句的執(zhí)行結(jié)果將被忽略
請求重定向和請求轉(zhuǎn)發(fā)
RequestDispatcher.forward方法只能將請求轉(zhuǎn)發(fā)給同一個(gè)WEB應(yīng)用中的組件;而HttpServletResponse.sendRedirect 方法還可以重定向到同一個(gè)站點(diǎn)上的其他應(yīng)用程序中的資源,甚至是使用絕對URL重定向到其他站點(diǎn)的資源。
如果傳遞給HttpServletResponse.sendRedirect 方法的相對URL以“/”開頭,它是相對于整個(gè)WEB站點(diǎn)的根目錄;如果創(chuàng)建RequestDispatcher對象時(shí)指定的相對URL以“/”開頭,它是相對于當(dāng)前WEB應(yīng)用程序的根目錄。
RequestDispatcher.forward方法的調(diào)用者與被調(diào)用者之間共享相同的request對象和response對象,它們屬于同一個(gè)訪問請求和響應(yīng)過程;而HttpServletResponse.sendRedirect方法調(diào)用者與被調(diào)用者使用各自的request對象和response對象,它們屬于兩個(gè)獨(dú)立的訪問請求和響應(yīng)過程。
關(guān)于request與JavaWeb response的對象原理的深入淺析問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
文章題目:request與JavaWebresponse的對象原理的深入淺析-創(chuàng)新互聯(lián)
當(dāng)前地址:http://aaarwkj.com/article38/hchpp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、云服務(wù)器、營銷型網(wǎng)站建設(shè)、網(wǎng)站營銷、網(wǎng)頁設(shè)計(jì)公司、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容