java_web学习(六) request对象中的get和post差异
1.get与post的区别
Get和Post方法都是对服务器的请求方式,只是他们传输表单的方式不一样。
下面我们就以传输一个表单的数据为例,来分析get与Post的区别
1.1 get方法 jsp中的代码form表单代码

1.2 action包中servlet的doGet方法中的代码
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文件中
本人还是初学者,高手大神请指教,
相关推荐
Guanjs0 2020-11-09
wmsjlihuan 2020-09-15
shishengsoft 2020-09-15
poplpsure 2020-08-17
CyborgLin 2020-08-15
Richardxx 2020-07-26
sunnyhappy0 2020-07-26
knightwatch 2020-07-19
wcqwcq 2020-07-04
chichichi0 2020-06-16
YAruli 2020-06-13
JF0 2020-06-13
84423067 2020-06-12
心丨悦 2020-06-11
zkwgpp 2020-06-04
stoneechogx 2020-06-04
litterfrog 2020-05-30
today0 2020-05-26