@ResponseBody注解
在Handler方法上添加该注解之后,方法的返回值将以字符串的形式直接响应给浏览器。
所处理的index.jsp标签:
<a href="${pageContext.request.contextPath }/testResponseBody">Test ResponseBody</a><br>
响应的Handler方法:
/*
* 在类上添加了@ResponseBody注解之后,Handler的方法的返回值将直接响应给浏览器,
* 但是前提是在SpringMVC的配置文件中配置了<mvc:annotation-driven></mvc:annotation-driven>
*/
@ResponseBody
@RequestMapping("/testResponseBody")
public String testResponseBody() {
System.out.println("测试@ResponseBody注解");
return "success";
}
测试显示页面:
重定向
- 一般情况下,控制器方法返回字符串类型的值会被当成逻辑视图名处理
- 如果返回的字符串中带 forward: 或 redirect: 前缀时,SpringMVC 会对他们进行特殊处理:将 forward: 和 redirect: 当成指示符,其后的字符串作为 URL 来处理
- redirect:success.jsp:会完成一个到 success.jsp 的重定向的操作
- forward:success.jsp:会完成一个到 success.jsp 的转发操作
所处理的index.jsp标签:
<a href="${pageContext.request.contextPath }/testRedirect">Test Redirect</a><br>
响应的Handler方法:
@RequestMapping("/testRedirect")
public String testRedirect() {
System.out.println("测试重定向");
// return "forward:/forward.jsp";
// return "redirect:/testMap";
return "redirect:/redirect.jsp";
}
测试显示页面: