全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java开发之request对象常用方法整理

 Java开发之request对象常用方法整理

本文主要介绍了Java中的request对象,并且对request对象中的一些常用方法作了一点总结,如果你是Java初学者,或许这篇文章对你会有所帮助。

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户这些信息。

request常用方法:

一、获取客户机环境信息常见方法:

1.getRequestURL方法返回客户端发出请求时的完整URL。

2.getRequestURI方法返回请求行中的资源名部分。

3.getQueryString方法返回请求行的参数部分。

4.getRemoteAddr方法返回发出请求的客户机的IP地址。

5.getRemoteHost方法返回发出请求的客户机的完整主机名。

6.getRemotePort方法返回客户机所使用的网络端口号。

7.getLocalAddr方法返回WEB服务器的IP地址。

8.getLocalName方法返回WEB服务器的主机名。

9.getMethod得到客户机请求方式。

package com.yyz.request;

 import java.io.IOException;
 import java.io.OutputStream;

 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

 public class RequestDemo extends HttpServlet {

   public void doGet(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     /**
     * URL是URI的子集。
     * URI用来标识一个资源。
     * URL用来标识互联网上的一个资源。
     */
     System.out.println(request.getRequestURL());//得到请求URL地址
     System.out.println(request.getRequestURI());//得到请求的资源
     System.out.println(request.getQueryString());
     System.out.println(request.getRemoteAddr());//得到来访者IP
     System.out.println(request.getRemoteHost());
     //由于没有在dns上注册所以打印结果还是127.0.0.1,如果是百度访问这个程序,则打印www.baidu.com
     System.out.println(request.getRemotePort());//得到请求的资源
     System.out.println(request.getMethod());//得到请求的资源
 }

   public void doPost(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     doGet(request,response);
 }

 }

在浏览器地址栏输入:http://localhost:8080/test/servlet/RequestDemo后,后台输出入下图:


二、获得客户机请求头:

1.getHeader(String name)方法

2.getHeaders(String name)方法

3.getHeaderNames()方法

package com.yyz.request;

 import java.io.IOException;
 import java.util.Enumeration;

 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 //获取请求头
 public class RequestDemo extends HttpServlet {

   public void doGet(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     String head = request.getHeader("Accept-Encoding");
     //有些浏览器不支持压缩数据
     if(head.contains("gzip")){
       //输出压缩数据
     }else{
       //输出不压缩数据
     }
     //获取指定名称的头的所有值
     Enumeration e = request.getHeaders("Accept-Encoding");
     while(e.hasMoreElements()){
       String value = (String ) e.nextElement();
       System.out.println(value);
     }
     System.out.println("------------------------");
     //获取所有的头和值
     e = request.getHeaderNames();
     while(e.hasMoreElements()){
     String name = (String)e.nextElement();
     String   value = request.getHeader(name);
     System.out.println(name+"="+value);
     }
 }

   public void doPost(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
     doGet(request,response);
 }

 }

在浏览器访问该程序,后台输出如下:

三、获得客户机请求参数(客户端提交的数据):

1.getParameter(name)方法

2.getParameterValues(String name)方法

3.getParameterNames方法

4.getParameterMap方法,做框架时大量使用

package com.yyz.request;
 import java.io.IOException;
 import java.util.Enumeration;
 import java.util.Map;
 import java.util.Map.Entry;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 //获取请求数据
 public class RequestDemo extends HttpServlet {
  public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
   //http://localhost:8080/test/servlet/RequestDemo?name=yyz
   String value = request.getParameter("name");
   System.out .println(value);
   //http://localhost:8080/test/servlet/RequestDemo?like=sing&like=dance
   String likes[] = request.getParameterValues("like");
   if(likes!=null){
    for(String like : likes){
     System.out.println(like);
    }
   }
   //下面是这种遍历的专业写法,获取数组数据的方式(可避免空指针异常)
   for(int i=0;likes!=null&&i<likes.length;i++){
    System.out.println(likes[i]);
   }
   //获取所有名称,并根据名称获取值
   Enumeration e = request.getParameterNames();
   while(e.hasMoreElements()){
    String name = (String) e.nextElement();
    value = request.getParameter(name);
    System.out.println(name+"="+value);
   }
   System.out.println("----------------------");
   //得到request对象中用来封装数据的Map集合
   Map<String,String[]> map = request.getParameterMap();
   for(Entry<String, String[]> me : map.entrySet()){
    String name = me.getKey();
    String [] v = me.getValue();
    System.out.println(name+"="+v[0]);
   }
 } 
  public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
   doGet(request,response);
 }
 }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Java中request对象常用方法总结  # Java  # request对象如何使用  # request对象  # Java中request对象常用方法汇总  # java中request对象各种方法的使用实例分析  # 客户端  # 象中  # 会有  # 你是  # 在这个  # 遍历  # 对你  # 作了  # 希望能  # 互联  # 不支持  # 这篇文章  # 谢谢大家  # 可以获得  # 开发人员  # 端口号  # 网上  # class  # pre  # brush 


相关文章: 表情包在线制作网站免费,表情包怎么弄?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何制作算命网站,怎么注册算命网站?  javascript基本数据类型及类型检测常用方法小结  东莞专业制作网站的公司,东莞大学生网的网址是什么?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  外贸公司网站制作,外贸网站建设一般有哪些步骤?  安云自助建站系统如何快速提升SEO排名?  七夕网站制作视频,七夕大促活动怎么报名?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  微信小程序 input输入框控件详解及实例(多种示例)  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  ppt制作免费网站有哪些,ppt模板免费下载网站?  建站VPS配置与SEO优化指南:关键词排名提升策略  如何快速搭建高效可靠的建站解决方案?  如何在宝塔面板中创建新站点?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  网站制作软件有哪些,制图软件有哪些?  网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?  C#怎么创建控制台应用 C# Console App项目创建方法  实现虚拟支付需哪些建站技术支撑?  制作宣传网站的软件,小红书可以宣传网站吗?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  如何通过西部建站助手安装IIS服务器?  建站为何优先选择香港服务器?  Android自定义listview布局实现上拉加载下拉刷新功能  内部网站制作流程,如何建立公司内部网站?  为什么Go需要go mod文件_Go go mod文件作用说明  郑州企业网站制作公司,郑州招聘网站有哪些?  如何注册花生壳免费域名并搭建个人网站?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  微信小程序制作网站有哪些,微信小程序需要做网站吗?  网站制作的步骤包括,正确网址格式怎么写?  Android使用GridView实现日历的简单功能  宁波自助建站系统如何快速打造专业企业网站?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  建站之星CMS五站合一模板配置与SEO优化指南  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  西安专业网站制作公司有哪些,陕西省建行官方网站?  网站制作说明怎么写,简述网页设计的流程并说明原因?  如何快速搭建响应式可视化网站?  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站之星如何快速解决建站难题?  如何自定义建站之星模板颜色并下载新样式?  网站设计制作公司地址,网站建设比较好的公司都有哪些? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。