servlet中get和post区别

servlet get和post的区别,get和post这是http协议的两种方法,另外还有head,delete等

中两种方法有本质的区别,get只有一个流,参数附在url后,大小个数有严格限制且只能是字符串。post的参数是通过另外的流传递的,不通过url,所以可以很大,也可以传递二进制数据,如文件的上传。

在servlet开发中,以doGet()和doPost()分别处理get和post方法。

另外还有一个doService(),它是一个调度方法,当一个请求发生时,首先执行doService(),不管是get还是post.在HttpServlet这个基类中实现了一个角度,首先判断是请求时get还是post,如果是get就调用doGet(),如果是post就调用doPost().你也可以直接过载doService()方法,这样你可以不管是get还是post。都会执行这个方法。

========================================================================================

1、通过表单提交到的servlet,看form的method是get还是post

2、通过链接<a href....>访问的servlet,doGet

3、直接在IE地址栏中键入的servlet地址,doGet

 

一般只要实现一个doGet,再另外一个doPost里面调用doGet(resq,resp),resq和resp是doPost的参数。

=========================================================================================

可以互相调用

doGet()和doPost(0方法,前者处理你表单交来的method=get的请求,后者处理method=post请求

 

1、get是吧参数数据队列加到提交表单的Action属性所指的url中,值和表单内各个字段--对应,在url中可以看到。

格式为“?字段1=输入数据1&字段2=输入素具2&。。”,再将其送到服务器。

如action为字段Name输入数据为jack,字段age的数据为15,则用get方法为“http://www.abc.com?Name=jack&Age=15”;Post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到Action属性所指的URL地址,用户看不到这个过程。

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

3、Get传输的数据量小,这主要是因为受URL长度限制;而Post方式提交,所以在上传文件只能使用Post

4、Get方式的提交需要用Resquest.QueryString来取得变量的值,而Post方式提交时,必须通过Request.Form来访问提交的内容。

5、这两者传递餐宿时所用的编码比一定是一样的。在Tomcat中似乎Get的编码方式时根据页面中指定的编码方式,而Post则是一直使用同一种编码方式,可在Tomcat的server.xml中配置。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值