SpringMVC中转发与重定向的区别浅析

转发和重定向

相同点

都是web开发中资源跳转的方式。

不同点

转发:是服务器内部的跳转,浏览器的地址栏不会发生变化。从一个页面到另一个页面的跳转还是同一个请求,也即是只有一个请求响应。可以通过request域来传递对象。

重定向:是浏览器自动发起对跳转目标的请求,浏览器的地址栏会发生变化。从一个页面到另一个页面的跳转是不同的请求,也即是有两个或两个以上的不同的请求的响应。无法通过request域来传递对象。

在SpringMVC中实现转发和重定向

(1)在SpringMVC中仍然以传统方式进行转发和重定向

下面的代码中login.jsp就是跳转后的页面

转发:

requst.getRequestDispatcher("login.jsp").forword(request,response);

重定向:

response.sendRedirect("login.jsp");

(2)SpringMVC提供了便捷的转发和重定向的方式

//转发

@RequestMapping("/forward")

public String forword(){

return "forward:/index.jsp";

}

//重定向

@RequestMapping("redirect")

public String redirect(){

return "redirect:/index.jsp";

}

总结

到此这篇关于SpringMVC中转发与重定向区别的文章就介绍到这了,更多相关SpringMVC转发与重定向区别内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

以上是 SpringMVC中转发与重定向的区别浅析 的全部内容, 来源链接: utcz.com/z/323011.html

回到顶部