//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. git 删除所有提交下的某个文件

    git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch upload/*' --prune-empty - ...

  2. 《从零開始搭建游戏server》项目公布到Linux环境

    前言: 之前我们提及了怎样使用Maven来创建.管理和打包项目,也简单过了一遍Linux中搭建Java开发环境的步骤,如今我们就開始将我们之前开发的项目demo公布到Linux环境下.并让它正常执行起 ...

  3. SpringBoot-基于Maven工程使用SpringBoot

    Spring Boot SpringBoot是一个社区反馈推动的项目.SpringBoot可以说是至少五年来Spring乃至整个Java社区最有影响力的项目之一.SpringBoot主要包括以下特性: ...

  4. django URL的补充 默认值 传多个参数

    url 后面还可以加上默认值 默认值 url(r'^index/', views.index, {'name': 'root'}), urls.py url对应关系 from django.conf. ...

  5. java-mybaits-00601-查询缓存-一级缓存、二级缓存

    1.什么是查询缓存 mybatis提供查询缓存,用于减轻数据压力,提高数据库性能. mybaits提供一级缓存,和二级缓存. 一级缓存是SqlSession级别的缓存. 在操作数据库时需要构造 sql ...

  6. matlab实现MSER(最大极值稳定区域)来进行文本定位

    一.自然场景文本定位综述   场景图像中文本占据的范围一般都较小,图像中存在着大范围的非文本区域.因此,场景图像文本定位作为一个独立步骤越来越受到重视.这包括从最先的CD和杂志封面文本定位到智能交通系 ...

  7. vultr服务器上搭建PHP运行环境-centos7

    安装nginx: yum install nginx 开启Nginx systemctl start nginx 访问你的域名或者ip 例如:quantaedu.com 安装PHP 查看系统版本lsb ...

  8. oracle dataguard参数

    在整个dg配置中,最复杂的也许就是参数的配置了,并且有许多参数都可以延伸出去讲很多,所以今天我们来看看dg的参数配置,顺便加上一点dataguard进程相关的信息,帮助理解. 在配置dg的过程中,我们 ...

  9. FAQs on Android

    @1: Environment Setup Ubuntu 14.04  32bits 1. Call Requires API level 11 (current min is 8) Android. ...

  10. bootstrap模态框嵌套、tabindex属性、去除阴影

    模态框嵌套 在开发中,遇到需要通过点击事件触发第一个模态框,触发后通过事件唤起第二个模态框,并且通过事件触发第三个模态框:即模态框嵌套. 模态框嵌套需要用一个模态框包裹所涉及嵌套的模态框,从而点击触发 ...