教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Java培訓(xùn)之HttpServletRequest基本功能

更新時間:2016年06月29日16時38分 來源:傳智播客Java培訓(xùn)學(xué)院 瀏覽次數(shù):

HttpServletRequest基本功能
1 HttpServletRequest的功能
HttpServletRequest在JavaWeb中非常重要的一個類。它是Servlet的service()方法的參數(shù)之一!所以你必須必須要掌握它!
request的功能可以分為以下幾種:

  • 封裝了請求頭數(shù)據(jù);
  • 封裝了請求正文數(shù)據(jù),如果是GET請求,那么就沒有正文;
  • request是一個域?qū)ο?,可以把它當成Map來添加獲取數(shù)據(jù);
  • request提供了請求轉(zhuǎn)發(fā)和請求包含功能。
 
2 request獲取請求頭數(shù)據(jù)
String value = request.getHeader(“請求頭名稱”);
request對象可以用來獲取請求頭數(shù)據(jù),當然,這些請求數(shù)據(jù)都是Tomcat封裝到request中去的。我們在service()方法中可以直接來獲??!
request與請求頭相關(guān)的方法有:

  • String getHeader(String name):獲取指定名稱的請求頭;
  • Enumeration getHeaderNames():獲取所有請求頭名稱;
  • int getIntHeader(String name):獲取值為int類型的請求頭。
3 request獲取請求相關(guān)的其它方法
request中還提供了與請求相關(guān)的其他方法,有些方法是為了我們更加便捷的方法請求頭數(shù)據(jù)而設(shè)計,有些是與請求URL相關(guān)的方法。
  • int getContentLength():獲取請求正文的字節(jié)數(shù),GET請求沒有正文,沒有正文返回-1;
  • String getContentType():獲取請求類型,如果請求是GET,那么這個方法返回null;如果是POST請求,那么默認為application/x-www-form-urlencoded,其它類型以后再學(xué);
  • String getMethod():返回請求方法,例如:GET
  • Locale getLocale():返回當前客戶端瀏覽器支持的Locale。java.util.Locale表示國家和言語,這個東西在國際化中很有用;
  • String getCharacterEncoding():獲取請求編碼,如果沒有setCharacterEncoding(),那么返回null。表示使用ISO-8859-1編碼;
  • void setCharacterEncoding(String code):設(shè)置請求編碼,只對正文有效!注意,對于GET而言,沒有正文!?。∷源朔椒ㄖ荒軐OST請求中的參數(shù)有效!
  • String getContextPath():返回上下文路徑,例如:/hello
  • String getQueryString():返回請求URL中的參數(shù),例如:name=zhangSan
  • String getRequestURI():返回請求URI路徑,例如:/hello/oneServlet
  • StringBuffer getRequestURL():返回請求URL路徑,例如:http://localhost/hello/oneServlet,即返回除了參數(shù)以外的路徑信息;
  • String getServletPath():返回Servlet路徑,例如:/oneServlet
  • String getRemoteAddr():返回當前客戶端的IP地址;
  • String getRemoteHost():返回當前客戶端的主機名,但這個方法的實現(xiàn)還是獲取IP地址;
  • int getRemotePort():返回客戶端的端口號,每次請求都會變;
  • String getSchema():返回請求協(xié)議,例如:http;
  • String getServerName():返回主機名,例如:localhost
  • int getServerPort():返回服務(wù)器端口號,例如:80
4 request.getRemoteAddr():封IP
  可以使用request.getRemoteAddr()方法獲取客戶端的IP地址,然后判斷IP是否為禁用IP。這種方式可以很方便的對多次密碼的用戶處理。remote 遠程


本文版權(quán)歸傳智播客Android培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客Android培訓(xùn)學(xué)院
首發(fā):http://xamj520.com/Android
0 分享到:
和我們在線交談!