Controller三种返回值、拷贝属性值到扩展类对象的方法
//把items的属性值都拷贝到itemsCustom
BeanUtils.copyProperties(items,itenmsCustom);
当Controller类的方法的:
返回值为ModelAndView时:
·直接创建ModelAndView对象并returnmodelAndView
返回值为String时:
`表示返回逻辑视图名(jsp路径=前缀+逻辑视图名+后缀)
return "api/search";
`形参可以(Model model,HttpServletRequest reuest);
model.addAttribute("items",items);
`然后还可以redirect请求重定向(浏览器地址栏地址改变,重新request)
return "redirect:url";
·当然还可以forword请求转发(浏览器的地址改变,request中数据保留)
return "forward:search";
在跳转到的页面request.getparameter("id");
返回值为void时:
`形参可以(HttpServletRequest request,HttpServletResponse response);
response.sendRedirect("url");
request.getRequestDispatcher("url").forward(request,response);
response.setCaracterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
response.getWriter().write("json串");
但是,不论返回值是什么类型,最后都会被HanderAdapter封装成ModelAndView