亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

JSP 中request與response的用法詳解

2024-09-05 00:23:27
字體:
供稿:網(wǎng)友

JSP 中request與response的用法詳解

概要:

在學(xué)習(xí)這兩個對象之前,我們應(yīng)該已經(jīng)有了http協(xié)議的基本了解了,如果不清楚http協(xié)議的可以看我的關(guān)于http協(xié)議的介紹。因為其實request和response的使用大部分都是對http協(xié)議的操作。

request對象的介紹

我們先從request對象進行介紹:

我們知道http協(xié)議定義了請求服務(wù)器的格式:

請求行
請求頭
空格
請求體(get請求沒有請求體)

好了,這里我們就不詳細介紹了,我們只看幾個應(yīng)用就可以了,沒什么難度:

應(yīng)用1 獲取請求頭

/**  * 獲取HTTP請求頭  *   String getHeader(String name),適用于單值頭  *   int getIntHeader(String name),適用于單值int類型的請求頭  *   long getDateHeader(String name),適用于單值毫秒類型的請求頭  *    Enumeration<String> getHeaders(String name),適用于多值請求頭  *  *  */ public class CServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {      String ip = request.getRemoteAddr();//獲取IP地址     String method = request.getMethod();//獲取請求方式     System.out.println(ip);     System.out.println(method);     getLiuLanQi(request);     protectMethod(request, response);   } //防盜鏈   public void protectMethod(HttpServletRequest request,       HttpServletResponse response) {     String url = request.getHeader("referer");     System.out.println(url);     if(url != null && url.equalsIgnoreCase("http://localhost:8080/day10/MyHtml.html") ) {       System.out.println("hi");     }     else {       response.setStatus(302);       response.setHeader("Location","/day10/MyHtml.html");       System.out.println("重定向");     }   } //判斷瀏覽器的類型   public void getLiuLanQi(HttpServletRequest request) {     String user = request.getHeader("User-Agent");     if(user != null) {       String userNoC = user.toLowerCase();       if(userNoC.contains("chrome")) {         System.out.println("瀏覽器類型:谷歌" );       }       else if(userNoC.contains("firefox/")) {         System.out.println("瀏覽器類型:火狐");       }       else {         System.out.println("瀏覽器類型:IE");       }     }     else {       System.out.println("null");     }   } } 

應(yīng)用2獲取URL路徑

/**  * 獲取請求URL   http://localhost:8080/day10_2/AServlet?username=xxx&password=yyy     > String getScheme():獲取協(xié)議,http     > String getServerName():獲取服務(wù)器名,localhost     > String getServerPort():獲取服務(wù)器端口,8080     > *****String getContextPath():獲取項目名,/day10_2     > String getServletPath():獲取Servlet路徑,/AServlet     > String getQueryString():獲取參數(shù)部分,即問號后面的部分。username=xxx&password=yyy     > String getRequestURI():獲取請求URI,等于項目名+Servlet路徑。/day10_2/AServlet     > String getRequestURL():獲取請求URL,等于不包含參數(shù)的整個請求路徑。http://localhost:8080/day10_2/AServlet  *  *  */ public class DServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     System.out.println(request.getScheme());     System.out.println(request.getServerName());     System.out.println(request.getServerPort());     System.out.println(request.getContextPath());     System.out.println(request.getServletPath());     System.out.println(request.getQueryString());     System.out.println(request.getRequestURI());     System.out.println(request.getRequestURL());   }  } 

應(yīng)用3獲取請求參數(shù)

/**  *  * 請求參數(shù):有一個參數(shù)一個值的,還有一個參數(shù)多個值!     > *****String getParameter(String name):獲取指定名稱的請求參數(shù)值,適用于單值請求參數(shù)     > String[] getParameterValues(String name):獲取指定名稱的請求參數(shù)值,適用于多值請求參數(shù)     > Enumeration<String> getParameterNames():獲取所有請求參數(shù)名稱     > *****Map<String,String[]> getParameterMap():獲取所有請求參數(shù),其中key為參數(shù)名,value為參數(shù)值。  *  */ public class EServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     doPost(request,response);   }    public void doPost(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     request.setCharacterEncoding("utf-8");//調(diào)用他來解決亂碼問題的,不會的可以看我寫的解決亂碼的那一篇     String name = request.getParameter("name");     String password = request.getParameter("password");     String[] aihao = request.getParameterValues("aihao");     response.setHeader("content-type", "text/html;charset=utf-8");     PrintWriter pw = response.getWriter();     pw.println("name:" + name + "<br/>");     pw.println("password:" + password + "<br/>");     pw.print("aihao");     for (int i = 0; i < aihao.length; i++) {       switch (i) {       case 1:         pw.print("吃飯");         break;       case 2:         pw.print("睡覺");         break;       case 3:         pw.print("打豆豆");         break;        default:                  break;       }     }     pw.close();   }  } 
<!-- 用于發(fā)送請求的html --> <html>  <head>   <title>denglu.html</title>   <meta http-equiv="content-type" content="text/html; charset=UTF-8">  </head>    <body>   <form action="/day10/EServlet" method="post"><!-- 通過post方法提交 -->     姓名:<input type="text" name="name"/><br/>     密碼:<input type="password" name="password"><br/>     愛好:<input type="checkbox" name="aihao" value="1"/>吃飯     <input type="checkbox" name="aihao" value="2"/>睡覺     <input type="checkbox" name="aihao" value="3"/>打豆豆     <input type="submit" value="提交">   </form>  </body> </html> 

應(yīng)用4設(shè)置request對象屬性

用來實現(xiàn)同一個應(yīng)用程序servlet之間值得傳遞,我們還用到了轉(zhuǎn)發(fā)

/**  *  ** request域     Servlet中三大域?qū)ο螅簉equest、session、application,都有如下三個方法:     > void setAttribute(String name, Object value)     > Object getAttribute(String name)    > void removeAttribute(String name);     > 同一請求范圍內(nèi)使用request.setAttribute()、request.getAttribute()來傳值!前一個Servlet調(diào)用setAttribute()保存值,后一個Servlet調(diào)用getAttribute()獲取值。   *  */ public class FServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     request.setAttribute("name","weijinhao");     request.setAttribute("password", "123");     RequestDispatcher rd = request.getRequestDispatcher("/GServlet");     rd.forward(request, response);   }  } 
public class GServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     String name = (String)request.getAttribute("name");     String password = (String)request.getAttribute("password");     response.setHeader("content-type", "text/html;charset=utf-8");     PrintWriter pw = response.getWriter();     pw.println("name:" + name + "<br/>");     pw.println("password:" + password + "<br/>");     pw.close();   }  } 

好了,request的用法大致就是這摸多了。

讓我們來看看response對象吧。

response對象的使用

http協(xié)議定義了響應(yīng)瀏覽器的格式

響應(yīng)行
響應(yīng)頭
空格
響應(yīng)體

response對象的大致應(yīng)用是用在設(shè)置響應(yīng)碼,設(shè)置響應(yīng)頭,及設(shè)置響應(yīng)正文。

應(yīng)用1設(shè)置響應(yīng)正文

/**    * response的正文    * 1,字符流    * 2,字節(jié)流    */   public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     //String n = "hello javaweb";     //byte[] b = n.getBytes();     //字節(jié)流的使用     /*ServletOutputStream outputStream = response.getOutputStream();     outputStream.write(b);     outputStream.close();*/               //字符流的使用     /*PrintWriter p = response.getWriter();     p.write(n);     p.close();*/          //commoms工具包的使用     FileInputStream fileInputStream = new FileInputStream("C:/Users/74087/Desktop/6226354_994604.jpg");     byte[] b = IOUtils.toByteArray(fileInputStream);     ServletOutputStream outputStream = response.getOutputStream();     outputStream.write(b);     outputStream.close();   }  } 

應(yīng)用2 設(shè)置響應(yīng)碼和響應(yīng)頭

/**    *response 的響應(yīng)碼    *1, sendError(int sc)//發(fā)送錯誤代碼    *2, sendError(int sc, java.lang.String msg) //發(fā)送錯誤代碼及描述    *3, setStatus(int sc) //發(fā)送成功響應(yīng)代碼    *response 的響應(yīng)頭    *1, setDateHeader(java.lang.String name, long date)    *2, setHeader(java.lang.String name, java.lang.String value)    *3, setIntHeader(java.lang.String name, int value)    *  下面的和上面的作用一樣但是是為了進行多值的添加    *  addDateHeader(java.lang.String name, long date)    *  addHeader(java.lang.String name, java.lang.String value)    *  addIntHeader(java.lang.String name, int value)    */   public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     //sendNum(response);     //sendRe(response);     //refresh(response);     //noCache(response);   }   //禁用瀏覽器緩存   public void noCache(HttpServletResponse response) {     response.setHeader("Cache-Control","no-cache");     response.setHeader("pragma","0");     response.setHeader("expires","no-cache");   }   //自動跳轉(zhuǎn)   public void refresh(HttpServletResponse response) {     response.setHeader("refresh", "5;url=http://www.baidu.com");   }   //重定向的使用   public void sendRe(HttpServletResponse response) {     response.setStatus(302);     response.setHeader("Location", "http://www.baidu.com");   }    public void sendNum(HttpServletResponse response) throws IOException {     response.setStatus(200);     response.sendError(404);     response.sendError( 404, "ser accept your request but i don't want to you see my web page");   }  } 

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


注:相關(guān)教程知識閱讀請移步到JSP教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
九九热只有这里有精品| 性欧美一区二区三区| 精品久久久久久久久久中文字幕| 亚洲国产又黄又爽女人高潮的| 国产精品免费小视频| 久久久久成人黄色影片| 中文字幕免费在线观看| 国产激情在线看| 亚洲网色网站| 亚洲一区中文日韩| 亚洲国产成人精品女人久久久| 欧美日产国产精品| 久久大逼视频| 国产一区二区在线视频聊天| 91美女片黄在线| 伊人伊成久久人综合网站| 奇米影视亚洲狠狠色| 97在线观看免费观看高清| 午夜激情一区二区三区| 欧美一级视频免费| 国产成人综合在线观看| 四虎影视精品永久在线观看| 欧美色第一页| 视频二区在线观看| 日韩av中文在线| 日韩av免费在线播放| 69视频在线| 中文字幕亚洲精品乱码| 蜜桃av乱码一区二区三区| 久久久久久国产精品日本| 国产网红女主播精品视频| 丁香六月综合激情| 先锋影音资源综合在线播放av| 精品日本一区二区三区在线观看| 午夜精品一区二区三区电影天堂| 亚洲一区在线免费观看| 国产精品香蕉国产| 久久男女视频| 亚洲欧美va天堂人熟伦| 免费看日批视频| 韩剧1988在线观看免费完整版| 国产精品人人爱一区二区白浆| 天干天干啦夜天天天视频| 亚洲欧洲99久久| 老色鬼久久亚洲一区二区| 国产+高潮+白浆+无码| 成人黄色在线免费观看| 久久久久欧美精品| 亚洲电影免费观看高清完整版在线| 手机看片福利视频| 国外成人在线播放| 黄色毛片在线| 色一情一区二区| 成人香蕉社区| 理论片午夜视频在线观看| 亚洲福利在线播放| 欧美日韩国产免费一区二区三区| 久久久.com| 成人精品动漫一区二区三区| 精品51国产黑色丝袜高跟鞋| 妖精视频一区二区三区| 午夜一区二区三区免费| 五月婷婷狠狠干| 日韩在线中文字幕视频| 日韩欧美国产综合一区| av色综合久久天堂av色综合在| 日日干天天草| 亚洲一区三区| 国产欧美一区视频| 九色视频网址| 欧美综合一区二区三区| 尤蜜粉嫩av国产一区二区三区| 奇米影视狠狠狠| 精品无人乱码一区二区三区| 精品视频在线观看一区二区| 欧美日韩在线直播| 蜜臀av在线播放| 国产天堂av在线| 亚洲av成人精品一区二区三区| 亚洲高清影院| 久久91精品视频| 日韩一区二区欧美| 国产精品成人av| 欧美日本一区二区三区四区| 欧美激情18p| 伊人蜜桃色噜噜激情综合| 你懂的视频在线观看资源| 天天精品视频| 亚洲日本激情| www.-级毛片线天内射视视| 麻豆网站免费在线观看| 中文字幕激情小说| 中文产幕区在线观看| 一本色道久久综合亚洲91| 不卡av电影在线播放| 久久国产乱子伦免费精品| 在线视频不卡一区二区三区| 国产成人一二三区| 综合视频在线| 爱情岛论坛亚洲品质自拍视频网站| 国产一二三区在线视频| 国产社区精品视频| 国产精品嫩草影院精东| 在线播放av网站| 国产综合一区二区| av免费在线视| 香蕉国产精品偷在线观看不卡| 亚洲丁香婷深爱综合| 我不卡手机影院| 红桃视频国产精品| 红桃视频一区二区三区免费| 欧美亚洲视频| 日本欧美一区| 免费av小说| 久久国产精品色| 欧美日韩在线精品一区二区三区激情综合| 欧美日韩一级二级三级| 日韩午夜在线视频| 三级在线观看视频| 色综合视频在线观看| 亚洲综合精品视频| 激情av在线播放| 福利视频一区二区三区| 国产精品网址| 在线视频1卡二卡三卡| 国产高清在线精品一区二区三区| 国产精品久久久久久久裸模| 特级黄色录像片| 亚洲a视频在线| 91激情在线视频| 中文字幕日本三级| 青青草视频在线视频| 亚洲人xxxx| 精品国产九九九| 天天天天天天天干| 免费看一级黄色| 亚洲裸色大胆大尺寸艺术写真| 欧美第一页草草影院浮力| 亚洲国产免费| 欧美精选在线播放| www.午夜精品| 一级片免费在线观看视频| 日韩视频在线你懂得| 成人午夜在线视频一区| 免费人成网ww777kkk手机| 国产精品一区二区日韩| 午夜一区二区视频| 2024国产精品| 中文字幕男人天堂| 一区二区三区日韩视频| 欧美激情视频一区二区三区| 中文字幕 人妻熟女| 成人国产精品一区二区网站| 日本一二三区不卡| 亚洲国产欧美国产综合一区| 久久久久国产精品免费| 91美女精品福利| 男人操女人免费软件| xx00欧美| 波多野在线播放| 欧美超级免费视 在线| 国产精品一区二区三区乱码| 久久久久久久久蜜桃| 97成人在线观看视频| 99久久精品久久亚洲精品| 91精品国产麻豆国产在线观看| 影音先锋男人每日资源站| 日本少妇毛茸茸高潮| 成人日韩在线电影| 欧美一区免费观看| 91久久精品国产91性色tv| 亚洲电影免费观看| 国产精品久久久久久久久借妻| 91吃瓜网在线观看| 九一国产精品| 青春草在线免费视频| 你懂的一区二区三区| 欧美一级专区免费大片| 国产精品吊钟奶在线| a优女a优女片| 在线国产一区二区三区| 日韩第一区第二区| 成人午夜淫片100集| 成熟亚洲日本毛茸茸凸凹| 青青操夜夜操| 这里只有久久精品视频| 5566日本婷婷色中文字幕97| 欧美日韩国产在线一区| 四虎国产精品免费久久5151| h在线观看视频免费网站| 羞羞在线观看视频| 成人网6969conwww| 国产爆初菊在线观看免费视频网站| www免费在线观看视频| 中日精品一色哟哟| 国产麻豆91精品| 精品福利视频导航大全| 99久久久无码国产精品不卡| 最新日韩中文字幕| 欧美极品少妇全裸体| 97视频人免费观看| 婷婷中文字幕一区三区| 波多野结衣久久高清免费| 久久婷婷一区二区| 国产成人高清精品| 亚洲成a人片在线观看中文| 在线观看视频色潮| 精品69视频一区二区三区Q| 欧洲日本不卡| 国产第一页在线观看| 天天色综合色| free性欧美16hd| 中国美女黄色一级片| 欧美日韩一区二区三区高清| 色综合久久久久久中文网| 日韩国产中文字幕| 国产一级免费黄色片| 午夜av区久久| 成人在线播放视频| 久久久久久99久久久精品网站| 国产区精品视频在线观看豆花| 视频在线观看入口黄最新永久免费国产| av不卡在线免费观看| 麻豆精品精品国产自在97香蕉| 欧美刺激脚交jootjob| av网站中文字幕| 国产精品美女久久久久aⅴ| 海角社区69精品视频| 丰满诱人av在线播放| 日韩一区二区中文字幕| 国产欧美日韩三区| 亚洲三级观看| 亚洲一区二区三区免费| 91精选在线| 欧美日韩精品免费观看视频完整| 免费高清视频日韩| 中文乱码免费一区二区| 青草影院在线观看| 97精品国产97久久久久久粉红| 午夜av不卡| 18岁视频在线观看| 成人国产一区二区| 丰满亚洲少妇av| 亚洲视频在线二区| 成人性生生活性生交12| www.男人的天堂| 亚洲黄色一级大片| 成人综合一区| 国产青草视频在线观看| 亚洲第一av网站| 成人影院午夜久久影院| 在线中文字幕视频| 日韩av一区二| 九色porny极品| 成人国产1314www色视频| 成人免费在线播放视频| 日韩欧美一级二级三级| 久久精品成人一区二区三区| 3d动漫一区二区三区在线观看| 少妇网站在线观看| 黄页网址大全在线观看| 激情五月婷婷综合| 中文字幕+乱码+中文乱码www| 夜鲁夜鲁夜鲁视频在线播放| 欧美黄色aaaa| 国产a∨精品一区二区三区仙踪林| 亚洲精品一二三四区| 一区二区三区四区欧美日韩| 亚洲午夜av电影| 国产精品偷伦一区二区| 欧美乱熟臀69xxxxxx| 日韩欧美在线视频日韩欧美在线视频| 国产精品乡下勾搭老头1| 久草在线资源福利站| 久久综合99| 亚洲欧美手机在线| 久久人人爽人人人人片| 国产精品爽爽久久久久久| 一本久久青青| 国产又黄又爽又无遮挡| 国自在线精品视频| www.成人在线视频| 欧美成人高清| 岛国成人av| 天堂一本之道| 国产原创视频在线| 91成人精品观看| 一路向西2在线观看| 国产精品一区二区av白丝下载| 免费网站在线高清观看| 一区二区三区在线免费| 九七影院理伦片| 亚洲精品国产精华液| 99re66热这里只有精品8| 亚洲永久视频| 欧美日韩综合高清一区二区| 欧美激情2020午夜免费观看| 亚洲国产精品无码观看久久| 国产精品伊人| 国产精品社区| 国产91一区二区三区| 成人av动漫在线观看| 成人精品视频一区| 精品xxxxxbbbb欧美中文| 麻豆网站视频在线观看| 久久aⅴ乱码一区二区三区| 91av视频在线免费观看| 国产免费裸体视频| 奇门遁甲1982国语版免费观看高清| 久久久久久久蜜桃| 性做久久久久久免费观看欧美| 麻豆视频在线观看免费网站| 免费人成a大片在线观看动漫| 亚洲国产日韩在线一区模特| 每日更新成人在线视频| 免费看大片爽| 亚洲精品66| 亚洲久久久久久久久久| 一级特黄色大片| 最新在线你懂的| 欧美丰满一区二区免费视频| 国产视频青青| 肥臀熟女一区二区三区| 欧美在线一区二区三区四| 97色在线播放视频| 精品久久久久久无码人妻| 欧美性极品xxxx做受| 电影一区二区三|