阅读目录(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表单代码
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的名字相同:
2.运行结果 2.1 输入数据
2.2 打印出数据
3.post方法
只需要将table表单中method改为post:
servlet中有这样的一行代码:
同样能打印出:只是出现了乱码
4.对比 4.1 在输出页面按下f12查看
post跟get的差异,优先选post
post的缺点:
更新web版本可以避免错误
servlet代码分析
5.分析
servlet作为控制器是不应该输出内容的,我们应该把要打印的内容放到jsp文件中
以上这篇java web学习_浅谈request对象中get和post的差异就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。