转发和重定向的联系和区别

Posted sxshe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转发和重定向的联系和区别相关的知识,希望对你有一定的参考价值。

》请求转发:不管跳转几个页面,都是一次请求,通过请求对象实现
》发送一次请求
》地址栏不会改变
》参数可以一直传递
》只能跳转到内部资源(项目中),不可以跳转外部资源(项目外)
》可以访问受保护的资源(web-inf)

req.getRequestDispatcher("demo.html").forward(req, resp); 

springmvn使用return "forward:/WEB-INF/jsp/demo.jsp";

》响应重定向:通过响应对象实现,跳转几个页面就发送几次请求
》发送多次请求
》地址栏会发生改变
》参数不能一直传递,需要手动传递,原因是,不是同一次请求了
》既可以跳转到内部资源,也可以跳转到外部资源
》不能访问受保护的资源

resp.sendRedirect("WEB-INF/test.html"); 

springmvn使用return new RedirectView(req.getContextPath() + "/demo.jsp");   

以上是关于转发和重定向的联系和区别的主要内容,如果未能解决你的问题,请参考以下文章

请问重定向与请求转发有啥区别?

转发以及重定向解析

java中转发和重定向的区别

转发和重定向的区别

SpringMVC框架如何实现请求转发和重定向呢?

转发和重定向的区别