关于servlet和jsp的学习总结二(详细)
一、 HTTP协议简介
1、http协议是基于请求响应模式的协议,客户端发送一个请求(此请求用http协议进行包装),服务器端经过处理后发送给客户端(也用http协议进行包装)。此协议是以tcp/ip为基础的,现在广泛使用的是1.1版本
2、http请求(request)
A:请求方法/URL/版本
B:请求头
C:请求正文(注:请求头与请求正文之间是一行空格,表示请求头已经完毕)
D:在这里还要详细讲一下关于http协议中的用于请求的get()何post()方法
1>.HTTP协议的格式:为了理解两者在传输过程中的不同,我们先看一下HTTP协议的格式: HTTP请求:
<request line> //用来说明请求类型(主要说明是get()还是post()方法)、要访问的资源以及使用的HTTP版本 |
2>下来以用httplook这个软件截取的实例详细说明
Get实例:
GET /books/?sex=man&name=Professional HTTP/1.1 |
Post实例
POST / HTTP/1.1 |
注意:两者url放置的区别
3>HTTP-GET和 HTTP-POST是使用HTTP的标准协议动词,用于编码和传送变量名/变量值对参数,并且使用相关的请求语义。每个HTTP-GET和HTTP- POST都由一系列HTTP请求头组成,这些请求头定义了客户端从服务器请求了什么,而响应则是由一系列HTTP应答头和应答数据组成,如果请求成功则返回应答。
HTTP-GET以使用MIME类型application/x-www-form-urlencoded的urlencoded文本的格式传递参数。 Urlencoding是一种字符编码,保证被传送的参数由遵循规范的文本组成,例如一个空格的编码是"%20"。附加参数还能被认为是一个查询字符串。(GET提交,请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,多个参数用&连接;例如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64加密,得出如: %E4%BD%A0%E5%A5%BD,其中%XX中的XX为该符号以16进制表示的ASCII。)
4> 与HTTP-GET类似,HTTP-POST参数也是被URL编码的。然而,变量名/变量值不作为URL的一部分被传送,而是放在实际的HTTP请求消息内部被传送。
(1) get是从服务器上获取数据,post是向服务器传送数据。
(2) 在客户端,Get方式在通过URL提交数据,数据在URL中可以看到;POST方式,数据放置在HTML HEADER内提交。
(3) 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
(4) GET方式提交的数据长度受浏览器URL长度的限制,而POST则没有此限制。(特定浏览器和服务器对URL长度有限制,例如IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。)
(5) 安全性问题。正如在(2)中提到,使用 Get 的时候,参数会显示在地址栏上,而 Post 不会。所以,如果这些数据是中文数据而且是非敏感数据,那么使用 get;如果用户输入的数据不是中文字符而且包含敏感数据,那么还是使用post为好。
2、http响应(response)
A:协议/状态码/描述
B:响应头
c:响应正文(头与正文之间是一个空行)
关于servlet和jsp的学习总结二(详细)相关推荐
- 【转载】 javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册 - 孤傲苍狼 - 博 http://www.cnblogs.com/xdp-gacl/
javaweb学习总结(二十二)--基于Servlet+JSP+JavaBean开发模式的用户登录注册 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+Ja ...
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- javaweb学习总结(二十二):基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- 转载:javaweb学习总结(二十三)——jsp自定义标签开发入门
javaweb学习总结(二十三)--jsp自定义标签开发入门 转自:http://www.cnblogs.com/xdp-gacl/p/3916734.html 一.自定义标签的作用 自定义标签主要用 ...
- 【Servlet】JSP学习-概念和运行原理
为什么需要JSP? 与HTML相比:根据后台的业务,可以动态输出HTML,网页内容是可以改变的. 与原生Servlet相比:不需要自己写输出语句resp.getWriter().write(" ...
- servlet和jsp学习总结
一.servletConfig部分 作用: ServletConfig 对象是Servlet的专属配置对象,每个Servlet都单独拥有一个ServletConfig对象,用来获取web.xml中的配 ...
- Head first servlet and jsp学习笔记
学习中遇到的问题:java基础不行,都忘光了. 主要是:继承,接口,多线程,IO.尤其是多线程,在分布式系统中应该使用的比较多 第一章:前言和体系结构 HTTP协议: TCP/IP的上层协议(应用层) ...
- servlet学习笔记二
Servlet 主要内容: 1)表单处理 2)乱码问题 3)页面跳转 4)生命周期 一.表单处理 Servlet获取表单数据 request.getParameter():通过表单参数名获取参数值 r ...
- 《Servlet和JSP学习指南》一导读
前 言 欢迎你阅读本书,其内容涵盖了Servlet 3.0和JSP 2.2方面的技术. Java Servlet技术,或简称Servlet,是Java中用于开发Web应用程序的基本技术.Sun公司于1 ...
最新文章
- Intel GPU实现游戏与数据中心
- WPF的消息机制(二)- WPF内部的5个窗口之隐藏消息窗口
- problem-solving-with-algorithms-and-data-structure-usingpython(使用python解决算法和数据结构) -- 基本数据结构(二)...
- maven 创建module失败 ,异常Unable to read parent POM
- 闯荡北京卖枣的临县人:同有一个“红枣美梦”(2张)
- 为什么mysql第一步安装_Mysql安装步骤
- Android开发之activity跳转页面失败的问题
- springboot整合rocketmq_面试官:简单说一下RocketMQ整合SpringBoot吧
- Android动态图标包制作教程,安卓手机ico图标制作美化图文教程
- 在抖音上,你只要会装穷,会装富,会吹牛逼,会包装自己,会扯淡,那翻身就指日可待了
- 通过JCONSOLE监控TOMCAT的JVM使用情况
- getResource()和getResourceAsStream以及路径问题
- jquery 获取 选中的radio的值
- 今天14:00 | NeurIPS 专场四 青年科学家专场
- BeagleBone 构建家庭安全系统
- pwnable之bof
- PDMS二次开发之PML开发一些常见查询语句
- Layaair 不规则碰撞检测 UI
- Vue中:error ‘XXXXX‘ is not defined no-undef解决办法
- 点击菜单更改菜单栏背景图片
热门文章
- javax.servlet.Filter详解(二) 转自:http://hi.baidu.com/jxnuywf/blog/item/f3834aee93e2fdf8b2fb95cc.html
- 突发!人人影视字幕组14人被抓,用户超800万,涉案金额超1600万!网友炸了:免费的片没了...
- ESPG和OGC、SRS、SRID指的是什么
- CVPR 2022 | 未知目标检测模块STUD:学习视频中的未知目标
- UTF8与GBK字符编码转换
- Ceres Solver从零开始手把手教学使用
- 【Unity3D-UGUI应用篇】(六)屏幕自适应(多分配率适配)
- Bailian3255 十进制到六进制【进制转换】
- Part1---3.数据库编程与完整性
- 如何向 Windows 7 镜像中添加 USB3.0 驱动