Servlet详解(五)--doget与dopost区别

1.运行的方式不同:

    当form框里面的method为get时,执行doGet方法
    当form框里面的method为post时,执行doPost方法

2.生成方式不同:

  get的生成方式:1)直接在URL上面输入网址,2)表单method不写内容时,默认get,3)表单method写get或者其他有些一些方法时,默认get,4)当重写service时,默认get ,5)网址中的超链接

  post的生成方式:form的method设定为post。

3.数据传输方法:

 get方式:存放在URL请求后面,所有get方式提交的请求都没有消息体   (密码不安全)

 post方法:存放在http请求的消息体内部传输进入到服务器。

4.数据的获得方法:

 get:使用QueryString来获得数据

 post:使用request.Form来获取数据

5.传输的数据量:

 get:数据量长度有限制,一般不超过2kb。因为是参数传递,且在地址栏中,故数据量有限制。

 post:适合大规模的数据传送。因为是以实体的方式传送的。

6.安全性:

 GET方式:安全性差。因为是直接将数据显示在地址栏中,浏览器有缓冲,可记录用户信息。所以安全性低。

 POST方式:安全性高。因为post方式提交数据时是采用的HTTP post机制,是将表单中的字段与值放置在HTTP HEADER内一起传送到ACTION所指的URL中,用户是看不见的

7.在用户刷新时:

 GET方式:不会有任何提示

 POST方式:会弹出提示框,问用户是否重新提交。

 

在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式。

上一篇:Servlet 生命周期


下一篇:PHP利用 JSON 将XML转换为数组