Java Servlet

文章目录

  • 前言
  • 一、get和post请求的区别
  • 二、forward和redirect的区别
  • 总结

前言
这次接的是上次写的Servlet(1) Servlet(2)将主要阐述 get和post请求的区别以及Forward和Redirect的区别。

一、get和post请求的区别
在我理解及查阅看来,它们主要有以下几点区别:

1、get是用来从服务器上获得资源,而post是用来向服务器提交数据。

2、使用get时参数会显示在地址栏上,如果这些数据是敏感数据,那么就应该用post,不是就可以用get。

3、get传输数据时要受URL长度限制(最大长度为2048个字符)而post可以传输大量数据,所以我们上传文件时通常使用post方式。

4、搜索引擎就是get()提交表单的典型应用,get()就是为查询设计的。

5、至于什么时候调用doGet()和doPost()则是看Form标签里的method属性,是get就调用doGet(),是post就调用doPost()。
在这里插入图片描述
二、Forward和Redicredit的区别

Forward中文是转发,Redirect中文是重定向

简单理解来说,转发是服务器行为,重定向是客户端行为。

转发(Forword)通过RequestDispatcher对象的forward(HttpServletRequest request,HttpServletResponse response)方法实现的。RequestDispatcher可以通过HttpServletRequest 的getRequestDispatcher()方法获得。例如下面的代码就是跳转到login_success.jsp页面。

request.getRequestDispatcher("login_success.jsp").forward(request, response);

重定向(Redirect) 是利用服务器返回的状态码来实现的。客户端浏览器请求服务器的时候,服务器会返回一个状态码。服务器通过 HttpServletResponse 的 setStatus(int status) 方法设置状态码。如果服务器返回301或者302,则浏览器会到新的网址重新请求该资源。

1、效率上来说:forward更高 redirect更低。

2、forward转发页面和转发到的页面可以共享request里的数据,而redirect不能。

3、forward一般用于登陆,redirect一般用于返回和跳转。

在这里插入图片描述
总结
以上就是今天所记录的内容,get和post两种命令,forward和redirect两种跳转方式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值