关于doGet()和doPost()方法

来源:百度知道 编辑:UC知道 时间:2024/07/07 06:41:46
通过理解
http://blog.ccidnet.com/blog-htm-do-showone-uid-38323-type-blog-itemid-132508.html
他们的区别我基本理解了

但我对下面的说法有点糊涂了。
doGet用于获取服务器信息,并将其做为响应返回给客户端。
doPost它用于客户端把数据传送到服务器端。
谁能帮我举例说明一下啊?

你那个说法是错误的。。

http协议的格式主要有3中,get、post、head。。。head一般不用再servlet中,get和post都可以用于数据传递,都可以把数据传给服务器,不同的是,他们的数据在http包中的位置不同,一般,get方法的数据放在头部,直接在url里面给出,而post在专门的数据区,因此post能传递大量的数据,一般在表单中可以选择post或者get方法,用url直接传参默认使用get

因为有这样的不同,所以servlet中专门有doGet和doPost对应于这两种传参方式,比如url = www.xxxx.com?aaa=b这样的就是get方式传参,你要想得到aaa的值,必须重写doGet方法,从request中得到值,从post中是得不到的。。。

实际上还有一个service方法,综合了上面两个,直接用这个是最好的了。。

the main difference between them is that doGet() does not have a body, but it can have a query string. query string has length limit; doPost() can have post body, which has no limit to its length.