servlet表单中get和post方法的区别

Form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。二者主要区别如下:

1、Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。

2、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。

3、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。

4、Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。

5、Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。

6、Get是Form的默认方法。

使用Post传输的数据,可以通过设置编码的方式正确转化中文;而Get传输的数据却没有变化。在以后的程序中,我们一定要注意这一点。

原文地址:https://www.cnblogs.com/MC-Curry/p/8467567.html

时间: 2024-10-22 10:58:17

servlet表单中get和post方法的区别的相关文章

form表单中method的get和post区别

一.问题的提出   <form action="getPostServlet/getPost.do?param4=param4" method="get">     <input type="hidden" name="param1" value="param1">     <input type="hidden" name="param2&quo

Jsp 和 servlet中Get方法和Post方法的区别

看了很久的javaEE 这里是我一直的困惑,我在这里总结一下. 1:请求数据的大小不同. 因为get请求的数据是要追加到URL中,而URL的数据量一般不能超过2K,所以用get请求的方法对数据的大小有限制.而post请求方法是把数据放在消息体中,所以理论上对数据量没有限制.(但是实际操作中也不能能太大) 2:安全性不一样 因为get请求的数据是追加在URL中,外部用户能很方便的看到,从这个角度上来讲不安全.而post方法因为是讲请求放在消息体中,不会直接在URL中显示所以从这个角度来说数据会比较

jsp页面的表单中submit和button的使用区别

今天在做增删改查时,使用了Javascrip语言,添加和修改完成以后,在做删除时,需要用form表单来获取. 问题来了,添加了form之后,添加和修改功能不好使了. 下面是我JSP页面中的按钮代码 类型type中应为button,不是submit.(一个form表单中可以有多个button按钮,却只能有一个submit按钮) submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了.如果表单在点击提交按钮后需要用JS进行处理(包括输入验证)后再提交的话,通常都必须

转: servlet中的service, doGet, doPost方法的区别和联系

大家都知道在javax.servlet.Servlet接口中只有init, service, destroy方法 但是我们在继承HttpServlet的时候为何一般重写doGet和doPost方法呢 下面我们看一下Servlet源代码: 注意: JDK只是定义了servlet接口,而实现servlet接口的比如tomcat, jboss等服务器 下面我们找到tomcat源代码, 可以到官网下载, 目前最新版本是7.0.53 找到javax.servlet.http.HttpServlet类, 下

html表单中get与post之间的区别

当用户在 HTML 表单 (HTML Form) 中输入信息并提交之后,有两种方法将信息从浏览器传送到 Web 服务器 (Web Server). 一种方法是通过 URL,另外一种是在 HTTP Request 的 body 中. 前一种方法,我们使用 HTML Form 中的 method = "get",后一种方法我们使用 HTML Form 中的 method ="post". 例句如下: <form action = "..." m

表单中input name属性有无[]的区别

1 input数组 如下一个表单: <input type="text" name="username[]" value="Jason" /> <input type="text" name="username[]" value="Tom" /> <input type="text" name="username[]"

Lotus表单中插入视图的解决方法 .

1)你可以在嵌入视图的表单的onload中写:for(i=0; i<document.all.length; i++) {  if(document.all[i].tagName=="H2")    {            document.all[i].innerHTML='<H2><FONT SIZE=3 COLOR="0000FF" FACE="宋体">谢谢,没有你要找到的记录...</FONT>

使用val()方法设置表单中的默认选中项

有时候我们展示给用户的表单中的checkbox,radio,selec等标签的一些项是默认选中的.比方:当用户改动文章的时候,假设相应的栏目为下拉框的话,那么它的默认选中值应该是原来的栏目位置. 能够使用jquery中的val()方法给select.checkbox.radio设置默认选中项. 对于multiple类型的select和checkbox还能够设置多个默认值. 效果图: 方法: $("select#multiple").val(["选择2号","

Servelt学习笔记之二&mdash;&mdash;使用Servlet提取表单中的数据

1.Servlet表单数据 在很多的情况下,我们需要在浏览器,Web服务器和后台程序之间传递数据.浏览器使用两种方法可将这些信息传递到Web服务器,分别为Get方法和Post方法. 1.1.Get方法: Get方法向页面请求发送已编码的用户信息.页面和已编码的信息中间用?字符分隔,如下所示: http://www.test.com/hello?key1=value1&key2=value2 GET方法是默认的从浏览器向Web服务器传递信息的方法,它会产生一个很长的字符串,出现在浏览器的地址栏中.