JavaWeb chapter 4 Servlet处理HTTP请求
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请求的更多相关文章
- JavaWeb chapter 2 Servlet
1. 什么是Servlet: Servlet是运行于Web容器中,按照其自身规范编写的Java应用程序. Servlet是用Java语言编写的,它是一个Java类,因而Servlet遵守所有Java ...
- javaweb学习之Servlet开发(二)
javaweb学习总结(六)--Servlet开发(二) 一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个< ...
- JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...
- JavaWeb开发之Servlet
1. Servlet有关概念和前置知识 1.1 什么是动态网页 如果浏览器在不同时刻或不同条件下访问web服务器上的某个页面,浏览器所获得的页面内容可以发生变化,那么这个页面就称之为动态页面. 动态网 ...
- (转)JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...
- JavaWeb学习 (六)————Servlet(二)
一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...
- JavaWeb应用和Servlet
JavaWeb应用的生命周期是由Servlet容器来控制的.包括三个阶段: 1.启动阶段:加载Web应用的有关数据,创建ServletContest对象,对Filter(过滤器)和一些Servlet进 ...
- 超全面的JavaWeb笔记day09<Servlet&GenericServlet&HttpServlet&ServletContext>
1.Servlet概述 2.Servlet接口 3.GenericServlet 4.HttpServlet 5.Servlet细节 6.ServletContext(重要) Servlet概述 生命 ...
- JavaWeb学习——了解Servlet
JavaWeb学习——了解Servlet 摘要:本文主要学习了什么是Servlet,以及如何使用Servlet进行开发. 基础知识 背景 随着互联网技术的发展,基于HTTP和HTML的web应用急速增 ...
随机推荐
- Python实现抓取页面上链接
方法一: # coding:utf-8 import re import requests # 获取网页内容 r = requests.get('http://www.163.com') data ...
- 1.1 C#简介
大家好,这是我的C#(读做 "C sharp")学习之旅,先简介一下我了解的C#吧! 首先,说到C#,就不得不提到微软的.NET..NET是微软推出的软件开发和运行平台,允许应用程 ...
- SQLServer 使用smb存放数据文件
安装smb: 服务器管理器->角色->文件服务 1.配置smb共享时,更改NTFS权限,需要将SQLServer启动域帐户加入,读.写.完全控制等权限 2.实例启动用户需要使用域帐户 3. ...
- [转]关于NSAutoreleasePool' is unavailable: not available in automatic reference counting mode的解决方法
转载地址:http://blog.csdn.net/xbl1986/article/details/7216668 Xcode是Version 4.2 Build 4D151a 根据Objective ...
- android 蓝牙串口通讯使用简介
需要的权限 <uses-permission android:name="android.permission.BLUETOOTH" /> <uses-perm ...
- SQL Server 2008教程和Microsoft® SQL Server® 2008 R2 SP2 - Express Edition下载
教程 SQL Server 2008 Tutorialhttp://www.quackit.com/sql_server/sql_server_2008/tutorial/ 数据库下载 Microso ...
- 管道函数(%>%)很简单
%>%来自dplyr包的管道函数,其作用是将前一步的结果直接传参给下一步的函数,从而省略了中间的赋值步骤,可以大量减少内存中的对象,节省内存 符号%>%,这是管道操作,其意思是将%> ...
- python os模块(1)
os模块主要处理文件和目录(文件夹)的创建.删除.检查判定.属性值修改.路径修改. (1)获取当前目录的两种方法 1 os.getcwd() os.path.abspath('.') (2)创建文件夹 ...
- php进制转换函数
1 十进制(decimal system)转换函数 ① 十进制转二进制 string decbin(int number). 参数为一个十进制整型数字,不是整型数字会自动转为整型数字,如'3'转为3 ...
- (转)内联(inline)函数与虚函数(virtual)的讨论
本文转自: http://topic.csdn.net/t/20051220/09/4469273.html 函数的inline属性是在编译时确定的, 然而,virtual的性质是在运行时确定的,这两 ...