在使用springMVC过程经常可能出现需要在一个controller处理完成之后根据情况发送至另一个controller继续处理的情况。这种情况下一般都会使用到如下两个关键字redirect和forward。
首先,redirect和forward都可以实现从一个controller跳转至另一个controller的功能,写法如下:
redirect:/youPath?param1=key1¶m2=key2...
forward:/youPath?param1=key1¶m2=key2...
下面比较一下两者之间的差别:
(1)redirect进行重定向后浏览器中输入地址框的地址会发生变化,模拟处理流程如下:
(2)forward进行重定向后浏览器中输入地址框的地址是不会发生变化的,模拟处理流程如下:
由上述分析可知,在进行重定向时使用redirect请求到达controller时re