在使用Spring MVC的过程中,我们可能遇到这样的问题,viewResolver的前缀和后缀都进行了配置,例如下面这样:
按这种配置来说,如果我们在Controller里设置逻辑视图名称,则跳转路径就是/WEB-INF/jsp+逻辑视图名+.jsp,例如:Controller如下:
那么 ,跳转路径就是/WEB-INF/jsp/index.jsp!
问题来了,如果我的项目结构是这样的:
admin所在目录和jsp不在同一个目录下,那这个时候再按上面的配置方式配置的话,就会见到我们亲切的“404”。
那么如何让页面按照我们的需求跳转那?事实上,ModelAndView默认是以forward方式进行跳转,即:转发方式。
我们只要在Controller层中这么写,则以重定向的方式跳转,重定向方式会冲破ViewResolver的束缚,按照Controller指定的方式跳转。
jsp页面请求如下:
最终结果如下: