(SpringMVC)响应数据和结果视图:转发和重定向

一、forward 转发

controller 方法在提供了 String 类型的返回值之后,默认就是请求转发。
我们也可以写成:

/**
* 转发
* @return
*/
@RequestMapping("/testForward")
public String testForward() {
	System.out.println("AccountController 的 testForward 方法执行了。。。。 ");
	return "forward:/WEB-INF/pages/success.jsp";
}

需要注意的是,如果用了 formward: 则路径必须写成实际视图 url,不能写逻辑视图,因为此时无法通过视图解析器去解析。

它相当于“ request.getRequestDispatcher("url").forward(request,response)” 。使用请求
转发,既可以转发到 jsp,也可以转发到其他的控制器方法。

二、Redirect 重定向

contrller 方法提供了一个 String 类型返回值之后, 它需要在返回值里使用:redirect:

/**
* 重定向
* @return
*/
@RequestMapping("/testRedirect")
public String testRedirect() {
	System.out.println("AccountController 的 testRedirect 方法执行了。。。。 ");
	return "redirect:/index.jsp";
}

它相当于“response.sendRedirect(url)” 。需要注意的是,如果是重定向到 jsp 页面,则 jsp 页面不
能写在 WEB-INF 目录中,否则无法找到

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章