1、  GET/POST提交方法:

  • 用户在网页上点击一个超链接;(get)
  • 用户提交在网页上提交表单;(post或者get)
  • 用户在浏览器地址栏输入URL地址并回车(get)

2、  默认情况下都是使用HTTP协议的GET方法提交请求。

3、  get方法:

提交数据类型:文本;

提交数据长度:不超过255个字符;

提交数据可见性:作为URL地址的一部分显示在浏览器地址栏;

提交数据缓存:缓存在浏览器URL历史状态中。

post方法:

提交数据类型:文本、二进制数据;

提交数据长度:没有限制;

提交数据可见性:作为请求的消息体,不可见;

提交数据缓存:不会被浏览器缓存。

4、

  • 请求一个静态页面或图形文件时使用GET方法,因为仅仅需要发送文件名;
  • 传送大数据、保密信息、上传文件等时候使用POST方法。

5、获取HTTP请求行和请求头:

getMethod():获取HTTP请求方法;

getRequestURI();获取请求的URL资源;

getProtocol();获取HTTP协议版本。

getHeader(name);返回指定的请求头的值

getHeaders();返回所有请求头的所有值

getHeaderNames();特定请求中接受到所有请求头的名称

6、获取请求消息体:

消息体可以是普通文本也可以是二进制数据;

getParameter(parameterName)通过表单参数名获得参数值,参数名区分大小写,只能获取文本数据(string)。

getInputStream()或者getReader()方法获取二进制数据。

HttpServletRequest对象中最常用的方法是获取请求参数的方法:getParameter()和getParameterValues()。

7、请求转发和重定向的区别:

  • 重定向是客户端浏览器来完成,而请求转发是服务器完成;
  • 重定向后浏览器URL地址会改变,而请求转发不会改变;
  • 重定向有两次请求/响应,而请求转发只有一次请求/响应;

8、RequestDispatcher对象提供两种方法:forward(),include();

9、请求范围:变量可以保存在请求范围中,在请求范围之外就不能进行访问了。

forrward()方法意味着把请求和响应派发给别的资源后,就不会再去做任何处理了。

include()方法意味着请求别人帮助处理请求,但这并不是完全移交,只是暂时地把控制权交给别人。

HttpServletRequest可以把一个对象用名字绑定在请求范围内,并进行访问和删除。

JavaWeb chapter 4 Servlet处理HTTP请求的更多相关文章

  1. JavaWeb chapter 2 Servlet

    1.  什么是Servlet: Servlet是运行于Web容器中,按照其自身规范编写的Java应用程序. Servlet是用Java语言编写的,它是一个Java类,因而Servlet遵守所有Java ...

  2. javaweb学习之Servlet开发(二)

    javaweb学习总结(六)--Servlet开发(二) 一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个< ...

  3. JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...

  4. JavaWeb开发之Servlet

    1. Servlet有关概念和前置知识 1.1 什么是动态网页 如果浏览器在不同时刻或不同条件下访问web服务器上的某个页面,浏览器所获得的页面内容可以发生变化,那么这个页面就称之为动态页面. 动态网 ...

  5. (转)JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...

  6. JavaWeb学习 (六)————Servlet(二)

    一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...

  7. JavaWeb应用和Servlet

    JavaWeb应用的生命周期是由Servlet容器来控制的.包括三个阶段: 1.启动阶段:加载Web应用的有关数据,创建ServletContest对象,对Filter(过滤器)和一些Servlet进 ...

  8. 超全面的JavaWeb笔记day09<Servlet&GenericServlet&HttpServlet&ServletContext>

    1.Servlet概述 2.Servlet接口 3.GenericServlet 4.HttpServlet 5.Servlet细节 6.ServletContext(重要) Servlet概述 生命 ...

  9. JavaWeb学习——了解Servlet

    JavaWeb学习——了解Servlet 摘要:本文主要学习了什么是Servlet,以及如何使用Servlet进行开发. 基础知识 背景 随着互联网技术的发展,基于HTTP和HTML的web应用急速增 ...

随机推荐

  1. Java enum(枚举)的用法详解(转)

    用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...

  2. Django开发笔记之数据库的设计

    后台采用Django开发,可以体会到开发的便利之处,对于一个项目来说,首先最重要的是数据库的设计,那么在Django下数据库设计主要是如下步骤: 1,需求分析,这点子不用多说,而我也深刻体会到了没有原 ...

  3. [Effective JavaScript 笔记]第63条:当心丢弃错误

    管理异步编程的一个是错误处理.同步代码中只要使用try语句块包装一段代码很容易一下子处理所有的错误. try{ f(); g(); h(); } catch(e){ //这里用来下得出现的错误 } t ...

  4. StructureMap使用方法(转)

    终于到了题目中的MVC使用StructureMap依赖注入的配置与实现了.在ASP.Net三层架构应用中StructureMap的是最老的IOC/DI工具,也就是依赖注入,很多线上的项目都使用了Str ...

  5. win8win10以管理员身份运行cmd方法

    win8win10以管理员身份运行cmd方法 Win7/8下提示OpenSCManager failed 拒绝访问Maven nexus 安装nexus : wrapper | OpenSCManag ...

  6. iOS开发中的内存分配(堆和栈)

    进程的内存分区 所有进程(执行的程序)都必须占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等.不过进程对这些内存的管理方式因内存用途不一而不尽相同,有些内存是事先 ...

  7. 字典的循环和if语句

    字典是键-值(key-value)存储,循环的时候也是以键为对象 d = {'Michael': 95, 'Tracy': 85,'Bob': 75} for x in d : print x 输出结 ...

  8. 红字差评系列2.dwarf

    [题目分析] 首先按照题目给出的样例想到只要每个物品的价格都用能够合成他的两个物品来更新,一边读入一边更新就好了,后来又发现如果出现这样的情况:1 2 3在2 5 6 的前面,那我们就需要先更新2在更 ...

  9. 【前端】String.prototype.match() 用法详解

    var str="1 plus 2 equal 3" // 正则表达式 console.log(str.match(/\d+/g)); // ["1", &qu ...

  10. [问题2015S04] 复旦高等代数 II(14级)每周一题(第五教学周)

    [问题2015S04] 设 \(A\) 为 \(n\) 阶方阵, \(C\) 为 \(k\times n\) 矩阵, 且对任意的 \(\lambda\in\mathbb{C}\), \(\begin{ ...