六、SpringMVC返回值

返回值为String
Controller方法返回字符串可以指定逻辑视图名称,经由视图解析器进行前缀和后缀的拼接。

@RequestMapping(value="/hello") 
public String sayHello() {  
 System.out.println("Hello SpringMVC!!"); 
 // 跳转到XX页面 
 return "success";
}

返回值是void
如果控制器的方法返回是void,首先程序会默认查找请求路径的页面,例如:@RequestMapping("/initAdd") initAdd页面
可以使用转发和重定向来跳转指定页面。
转发:

request.getRequestDispatcher("/WEB-INF/pages/add.jsp").forward(request, response);

重定向;

response.sendRedirect(request.getContextPath()+"/add2.jsp");

设置请求响应时的字符编码:

response.setCharacterEncoding("UTF-8"); 
response.setContentType("text/html;charset=UTF-8");

直接响应数据:

response.getWriter().print("你好");

返回值是ModelAndView

@RequestMapping(value="/findAll") 
public ModelAndView findAll() throws Exception { 
ModelAndView mv = new ModelAndView(); 
// 跳转到list.jsp的页面 
mv.setViewName("list");
// 模拟从数据库中查询所有的用户信息 
List users = new ArrayList<>(); 
User user1 = new User(); 
user1.setUsername("张三");
user1.setPassword("123");
mv.addObject("users", users);
return mv;
}

你可能感兴趣的:(六、SpringMVC返回值)