java web学习_浅谈request对象中get和post的差异

时间:2021-12-08 18:02:02

阅读目录(content)

•1.get与post的区别

•1.1 get方法 jsp中的代码form表单代码

•1.2 action包中servlet的doget方法中的代码

•2.运行结果

•2.1 输入数据

•2.2 打印出数据

•3.post方法

•4.对比

•4.1 在输出页面按下f12查看

•5.分析

1.get与post的区别

get和post方法都是对服务器的请求方式,只是他们传输表单的方式不一样。

下面我们就以传输一个表单的数据为例,来分析get与post的区别

1.1 get方法  jsp中的代码form表单代码

java web学习_浅谈request对象中get和post的差异

1.2 action包中servlet的doget方法中的代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
protected void doget(httpservletrequest request, httpservletresponse response)
   throws servletexception, ioexception {
  response.setcontenttype("text/html;charset=gbk");//设置响应正文的mime类型
  request.setcharacterencoding("gbk");//设置请求的编码格式
  response.setcharacterencoding("gbk");
 
  string username = request.getparameter("username");//
  string password = request.getparameter("password");
  string sex = request.getparameter("sex");
  string classes = request.getparameter("class");
  string hobby[] = request.getparametervalues("hobby");// 获取checkbox的数据保存到hobby数组中
 
  printwriter out = response.getwriter();
  
  if (hobby != null) {
   for (string x: hobby) {
    out.println("doget被调用");
    out.println("name:"+username+"password:"+password+"sex"+sex+"classes"+classes);
    out.println("hobby:" + x); 
   }
  }else{
   out.println("此人没爱好!");
  }
 }

注意:action包中servlet命名与form表单action的名字相同:

java web学习_浅谈request对象中get和post的差异

2.运行结果  2.1 输入数据

java web学习_浅谈request对象中get和post的差异

  2.2 打印出数据

   java web学习_浅谈request对象中get和post的差异

3.post方法

   只需要将table表单中method改为post:

java web学习_浅谈request对象中get和post的差异

servlet中有这样的一行代码:

java web学习_浅谈request对象中get和post的差异

同样能打印出:只是出现了乱码

java web学习_浅谈request对象中get和post的差异

4.对比   4.1 在输出页面按下f12查看

java web学习_浅谈request对象中get和post的差异

 

   

   java web学习_浅谈request对象中get和post的差异

   post跟get的差异,优先选post

    post的缺点:

    java web学习_浅谈request对象中get和post的差异

  更新web版本可以避免错误

servlet代码分析

java web学习_浅谈request对象中get和post的差异

5.分析

servlet作为控制器是不应该输出内容的,我们应该把要打印的内容放到jsp文件中

以上这篇java web学习_浅谈request对象中get和post的差异就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。