SpringMVC重定向

Posted kitor

tags:

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

SpringMVC重定向的两种方式

首先明白,重定向一定不会经过视图解析器,因为请求转发的页面是在地址栏直接访问的,是一个新的请求,如果经过视图解析器,拼接后的结果就是错误的,所以重定向一定不经过视图解析器。另外WEB-INF下的所有文件必须通过请求转发才能访问。

约定:在本项目存在/WEB_INF/pages/success.jsp文件,

SpringMVC的环境自行配置

方式一:SpringMVC提供的重定向

前端界面

<a href="$pageContext.request.ContextPath/redirectMVC">SpringMVC方式重定向</a>

后台代码

//请求转发处理器
@RequestMapping("/redirectMVC")
public String forwardView()
//不能由于上面介绍的原因,所以此处的写法是错误的
//return "redirect:/WEB_INF/pages/success.jsp";
//此处的写法是正确的
return "redirect:forwardMVC";
 
@RequestMapping("/forwardMVC")
public String forwardMVC()
return "success";
 

方式二:Servlet原生支持的重定向

前端界面

<a href="$pageContext.request.ContextPath/redirectCommon">传统方式重定向</a>

后台代码

//请求转发处理器
@RequestMapping("/redirectMVC")
public void forwardView(HttpServletRequest,HttpServletResponse)
response.sendRedirect(request.getContextPath()+"/项目名/forwardView");
 

 

以上是关于SpringMVC重定向的主要内容,如果未能解决你的问题,请参考以下文章

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

springMVC学习总结 --springMVC重定向

springmvc怎样设定重定向和转发

必看|springmvc中的Model对象在重定向中的数据传递

spring mvc 重定向,地址栏带了参数,不想带怎么办

SpringMVC__配置视图解析以及服务端重定向和服务端跳转简单代码