servlet转发与重定向怎么使用

这篇文章主要讲解了“servlet转发与重定向怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“servlet转发与重定向怎么使用”吧!

我们在学servlet的时候,有两个很重要的概念:转发与重定向。

老师讲完之后帮我们总结好了它们各自的特点:

重定向:

1. 地址栏发生变化
2. 重定向可以访问其他站点(服务器)的资源
3. 重定向是两次请求。不能使用request对象来共享数据

转发:

1. 转发地址栏路径不变
2. 转发只能访问当前服务器下的资源
3. 转发是一次请求,可以使用request对象来共享数据

可是听完还是一头雾水?这俩到底什么玩意?

生活中的例子

转发—–你找我借钱,我没钱,但是我可以帮你找人借钱。帮你找人借钱这个动作由我去执行,这里的我指的是web服务器,比如tomcat!

重定向—–你找我借钱,我说没钱滚蛋,你只好乖乖溜走了。然后自己去找其他人借,这里的你指的是浏览器。

项目中的例子

转发 :登录成功后跳转到登录成功的界面,比如home.jsp  
 
我对tomcat说:“我登录成功后能不能把我带进系统主页”?
 
tomcat说:“没问题,我帮你!”
 
/**   * 管理员登录   * @return   */  @RequestMapping("/login")  public String login(Admins admin, HttpServletRequest request, HttpSession session) {    if (adminService.checkUser(admin.getUsername(), admin.getPassword())) {      session.setAttribute("username", admin.getUsername());    }    return "/admin/home.jsp";  }
重定向: 用户退出系统,重定向到登录界面
 
我对tomcat说:“我退出后能不能帮我再登录一下”?
 
tomcat说:“滚一边去,自己登录去,我才不帮你!”

 
//退出  @RequestMapping("/logout")  public String  list(HttpSession session) throws Exception{    session.invalidate();    //重定向到index.jsp    return "redirect:/index.jsp";  }

 

小结:转发可以继续访问tomcat服务器资源,比如jsp。
重定向必须要再向servlet(Controller)发次请求。

感谢各位的阅读,以上就是“servlet转发与重定向怎么使用”的内容了,经过本文的学习后,相信大家对servlet转发与重定向怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

原创文章,作者:506227337,如若转载,请注明出处:https://blog.ytso.com/220116.html

(0)
上一篇 2022年1月2日
下一篇 2022年1月2日

相关推荐

发表回复

登录后才能评论