SpringMVC-视图解析器

由于配置了视图解析器,controller返回的字符串会被自动拼接前缀(WEB-INF/pages)和后缀(.jsp),如果想要跳转到当前项目下的界面则会找不到(被自动拼接后路径错误)

forward前缀指定一个转发

controller返回值中包含forward,即告诉视图解析器这个路径不需要拼接,而是转发到该路径

@RequestMapping("/handle01")
public String testForward(){
	return "forward: /hello.jsp";
}
/*
	转发当前项目下的hello.jsp(WebContent下面)
	而不是前端控制器拼接的WEB-INF/pages/... 
	等价于servlet的转发操作
*/

@RequestMapping("/handle02")
public String handle02(){
	return "forward: /handle01";
}
/*
	相当于将/handle02请求转发到/handle01来处理
*/

redirect重定向

原生的servlet重定向需要加上项目名才能成功,因为这个请求是由浏览器来进行解析,需要完整的url地址
response.sendRedirect("/learnJava/hello.jsp")

使用springMVC提供的redirect重定向,不必加上项目名,SpringMVC会自动进行拼接

@RequestMapping("/handle03")
public String handle03(){
	/*
		SpringMVC会自动为其拼接上项目名
		localhost:8080/SpringMVC_learn/hello.jsp
	*/
	return "redirect: /hello.jsp";
}

@RequestMapping("/handle04")
public String handle04(){
	/*
		访问localhost:8080/SpringMVC_learn/handle04时
		会重定向到localhost:8080/SpringMVC_learn/handle03(重新发请求)
	*/
	return "redirect: /handle03"
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值