servlet中的请求转发和重定向

假设有这样的场景,你在web网站上输入相关的信息,点击提交,网站的页面会跳转到新的页面。那么这样是如何做到的?

这里就要用到请求转发或是重定向了。

请求转发:

                      顾名思义,就是将本次的请求扭转到下一个处理事务中去。我们来看一下它的具体流程。

我们假设有登录页面:PageServlet,(form表单会将请求数据发送到LoginServlet)

登录处理:LoginServlet

登录成功页面:SuccessServlet。

现在要做的是登录这个动作。1.在浏览器中输入相关URL访问到登录页面PageServlet。

                                              2.输入用户名,密码,点击登录。LoginServlet接受到本次请求数据,去验证,成功则把SuccessServlet页面给浏览器发送过去。失败,继续显示登录页面PageServlet,提示用户重新登陆。其中的转换为新的页就是用的请求转发。

JAVA中这样写:

请求转发:
request.getRequestDispatcher(URL地址).forward(request, response)

需要注意的是request对象是服务器封装好的,它的声明周期只限于本次请求。所以为了让下一个Servlet处理拿到本次request对象,需要将request对象也转发下去,所以后面要跟forward()。这样多个Servlet联动处理了本次请求,这样使得每个Servlet各司其职,逻辑层

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值