首页 > 代码库 > doGet和doPost区别

doGet和doPost区别

doGet:处理GET请求 

doPost:处理POST请求 

     当发出客户端请求的时候,调用service 方法并传递一个请求和响应对象。Servlet首先判断该请求是GET 操作还是POST 操作。然后它调用下面的一个方法:doGet 或 doPost。如果请求是GET就调用doGet方法,如果请求是POST就调用doPost方法。doGetdoPost都接受请求(HttpServletRequest)和响应(HttpServletResponse)

1、大小

get只有一个流,参数附加在url后,地址行显示要传送的信息,大小个数有严格限制且只能是字符串,大小限制在1024KBpost的参数是通过另外的流传递的, 不通过url,所以可以很大,也可以传递二进制数据,如文件的上传。

2、地址栏

get通过URL提交的参数会显示在地址栏中,这在系统的安全方面可能带来问题;post提交的参数不会显示在地址栏中。这样post就可以提高get的安全性能,避免数据的泄露。

3、执行

form框里面的methodget时,执行doGet方法,使用get提交就必须在服务器端用doGet()方法接收;当form框里面的methodpost时,执行doPost方法,使用post提交就必须在服务器端用doPost()方法接收。

4、编码转换

request请求里面,编码转换;get方法得到的内容每一个都要进行编码转换,而post方法则只要设置request.setCharacterEncoding("UTF-8")就可以,不要再从request得到的每个数据进行编码转换了。

doGet和doPost区别