事先在spring的xml中配置了视图控制器的前后缀:
<!--配置controller中方法的返回值的前后缀,简化逻辑视图名称 比如 return "/WEB-INF/views/ok.jsp 前缀为 /WEB-INF/views 后缀为 .jsp 因为我们在访问页面的时候变化的更多是/WEB-INF/views/xxx.jsp 中的 xxx --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" name="viewResolver"><!--默认视图解析器--> <!--前缀:return "/WEB-INF/views/ok.jsp" 中的/WEB-INF/views 前面的部分--> <property name="prefix" value="/WEB-INF/views/"></property> <!--配置后缀--> <property name="suffix" value=".jsp"></property> </bean>
这样在请求处理方法return时,默认转发的就是加上了前后缀的路径:
比如 return "ok" 实际上就是转发的 /WEB-INF/views/ok.jsp ,那么想要转发到 login.jsp 该怎么使用呢?
只需要在请求处理方法的 return 中显式地加上 forward:/login.jsp 就行了;
比如:
package cn.cdulm.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class ResponseController { @RequestMapping("/res1") public String res1(){ return "forward:/login.jsp"; } }
访问映射地址:
成功!
由此可知:加上forward后就不会转交给视图解析器进行解析。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。