//1、获取请求参数
//获取参数的单个值,如有多个则只返回第一个
String parameter1 = request.getParameter("demo");
//获取参数数组,
String[] parameter2 = request.getParameterValues("demo");
//获取所有参数名值对的java.util.Map<String,String[]>
Map<String, String[]> parameterMap = request.getParameterMap();
//获取所有可用参数的名字的枚举
Enumeration<String> parameterNames = request.getParameterNames(); // java.lang.NullPointerException
// 第一次调用请求对象的getParameter、getParameterValues、getParameterMap、getParameterNames方法时
// Web容器将判断该请求是否包含post变量,如果包含它将读取请求的InputStream并解析这些变量,InputStream只能被读取一次
// 如果在调用了一个含有post请求的getInputStream或getReader之后,再次尝试获取请求参数时则会触发一个java.lang.NullPointerException
// 反之如果在获取了一个含有post变量的请求参数之后再调用getInputStream或getReader也会触发java.lang.NullPointerException
// 任何时候在使用含有post变量的请求时,最好使用参数方法,不要使用getInputStream或getReader //2、确定与请求内容相关的信息
//获取请求的MIME(多用途互联网邮件扩展)内容类型
String contentType = request.getContentType();
//获取请求正文的长度
int contentLength = request.getContentLength();
long contentLengthLong = request.getContentLengthLong();//内容长度的超过2GB的请求
//获取请求内容的字符编码
String characterEncoding = request.getCharacterEncoding(); //3、读取请求内容,不要在同一个请求上同时使用下面两种方法,会触发java.lang.NullPointerException
//适用于请求参数时二进制格式的
ServletInputStream inputStream = request.getInputStream();
//适用于请求参数是字符编码的
//BufferedReader reader = request.getReader(); //4、获取请求特有信息
//返回客户端完整的URL http://localhost:8080/dyf-pms/helloServlet.action
StringBuffer requestURL = request.getRequestURL(); //返回服务器路径部分 /dyf-pms/helloServlet.action
String requestURI = request.getRequestURI(); //返回用于匹配Servlet映射的URL部分 /helloServlet.action
String servletPath = request.getServletPath(); //返回指定名字的请求头数据
String header = request.getHeader("host"); //返回请求中所有头数据的名字的枚举,遍历所有可用头数据的好方式
Enumeration<String> headerNames = request.getHeaderNames(); //如果指定的一个 头数据不能转化为整数,则抛出异常NumbereFormatException
int intHeader = request.getIntHeader("");
//返回一个Unix时间戳(毫秒),如果头数据不能转化为日期,则抛出异常IllegalArgumentException
long dateHeader = request.getDateHeader(""); //设置中文字符编码
response.setHeader("Content-type", "text/html;charset=UTF-8");
response.setCharacterEncoding("utf-8");
response.getWriter().write("湘爷你好");

HttpServletRequest request方法详解的更多相关文章

  1. session的使用方法详解

    session的使用方法详解 Session是什么呢?简单来说就是服务器给客户端的一个编号.当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站.当每个用户首次与这台WWW服务器 ...

  2. HTTP请求方法详解

    HTTP请求方法详解 请求方法:指定了客户端想对指定的资源/服务器作何种操作 下面我们介绍HTTP/1.1中可用的请求方法: [GET:获取资源]     GET方法用来请求已被URI识别的资源.指定 ...

  3. request.getcontextPath() 详解

    request.getcontextPath() 详解 文章分类:Java编程 <%=request.getContextPath()%>是为了解决相对路径的问题,可返回站点的根路径. 但 ...

  4. django中request对象详解(转载)

    django中的request对象详解 Request 我们知道当URLconf文件匹配到用户输入的路径后,会调用对应的view函数,并将  HttpRequest对象  作为第一个参数传入该函数. ...

  5. Yii::app()方法详解

    Yii::app()方法详解 1.Yii::app()返回的是一个当前框架应用程序的对象 2.Yii::app()是framework/web/CWebApplication.php类实例化的对象,所 ...

  6. Android Service生命周期 Service里面的onStartCommand()方法详解

    在Demo上,Start一个Service之后,执行顺序:onCreate - > onStartCommand 然后关闭应用,会重新执行上面两步. 但是把代码拷贝到游戏工程发现,关闭游戏后,只 ...

  7. Nginx服务器中配置非80端口的端口转发方法详解

    这篇文章主要介绍了Nginx服务器中配置非80端口的端口转发方法详解,文中使用到了Nginx中的proxy_pass配置项,需要的朋友可以参考下 nginx可以很方便的配置成反向代理服务器: 1 2 ...

  8. $.ajax()方法详解 ajax之async属性 【原创】详细案例解剖——浅谈Redis缓存的常用5种方式(String,Hash,List,set,SetSorted )

    $.ajax()方法详解   jquery中的ajax方法参数总是记不住,这里记录一下. 1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. 2.type: 要求为Str ...

  9. 3、lvs调度方法详解

    3.lvs类型和调度方法详解    http://www.178linux.com/13570 集群:将多台主机组织起来满足某一特定需求: 集群类型: LB:Load Balancing, 负载均衡集 ...

随机推荐

  1. 转!!mybatis xml 传值 if test判断

    当mapper方法传参数 为 String时,且xml中药进行参数比较 比如 是不是等于1 或者等于2 方式1. 方式2. 转自:https://blog.csdn.net/chenaini119/a ...

  2. react es6语法 之 => 箭头函数

    参考:https://www.cnblogs.com/secretAngel/p/9699356.html (1).只有一个参数且只有一句表达式语句的,函数表达式的花括号可以不写let test = ...

  3. Git 使用配置

    应用情景:使用Git前需要配置 user.name 和 user.email 信息.Git利用这些信息记录谁进行了什么样的操作.Git属于分布式版本管理系统,开发者很多,配置这个就相当于自报家门,告诉 ...

  4. Linux cal命令

    cal命令时查看日历的相关命令 1.用法 cal [选项] [[[日] 月] 年] 2.命令选项 -1, --one 只显示当前月份(默认) -3, --three  显示上个月.当月和下个月 -s, ...

  5. Spark应用提交

    在 Spark 的 bin 目录中的 spark-submit 脚本用与在集群上启动应用程序.它可以通过一个统一的接口使用所有 Spark 支持的 Cluster Manager,所以您不需要专门的为 ...

  6. 在Delphi中使用indy SMTP发送gmail邮件[转]

    在Delphi中使用indy SMTP发送gmail邮件[转] 2012-01-01 22:44:30|  分类: Delphi |  标签: |举报 |字号大中小 订阅     在Delphi中发送 ...

  7. HDU - 2204 Eddy's爱好 (数论+容斥)

    题意:求\(1 - N(1\le N \le 1e18)\)中,能表示成\(M^k(M>0,k>1)\)的数的个数 分析:正整数p可以表示成\(p = m^k = m^{r*k'}\)的形 ...

  8. 写入Csv

    //定义文件输出流  FILE *f; f = fopen("a.csv" , "wb"); fprintf(f,"aaa,23,sdf\n" ...

  9. app安全研究

    国内Android App在线漏洞检测平台  腾讯金刚审计系统 http://service.security.tencent.com/kingkong 免费 无限制 腾讯御安全 http://yaq ...

  10. iOS开发之XMPPFramework开发基础介绍

    1 使用iPhoneXMPP实例 2 修改xmppstream设置 3 基础协议的介绍 协议 协议简介 XEP-0009 在两个XMPP实体间传输XML-RPC编码请求和响应 XEP-0006 使能与 ...