MVC方法返回值类型
ModelAndView返回值类型:
1.当返回为null时,页面不跳转。
2.当返回值没有指定视图名时,默认使用请求名作为视图名进行跳转。
3.当返回值指定了视图名,程序会按照视图名跳转。
/*添加*/
@RequestMapping("/getSale")
public ModelAndView addSale(Sale sale,HttpServletRequest request,ModelAndView mv){
if (sale!=null) {
Double totalPrice = sale.getPrice() * sale.getQuantity();
sale.setTotalPrice(totalPrice);
sale.setSaleDate(new Date());
Users user = (Users) request.getSession().getAttribute("user");
sale.setUserId(user.getUid());
int i = userService.addSale(sale);
if (i > ) {
mv.setViewName("saleList");
} else {
mv.setViewName("prodectAdd");
}
}
return mv;
}
Objectl返回值类型;
/*绑定下拉框*/
@RequestMapping("/prodectName")
@ResponseBody
public Object getprodectName(){
List<Product> products = userService.getproductName();
return products;
}
String返回值类型:
1、如果返回值为null,那么以请求名作为视图名进行跳转
2、如果指定返回值,那么按照指定返回值作为视图名进行跳转,可以通过model,modeMap携带数据。
3、如果返回值带有forward或者redirect前缀,那么将会进行相应的请求或重定向,不过不能通过mvc的数据模型携带数据,可以通过ServletApi携带数据。
@RequestMapping("/welcome")
public String welcome(String userName, Model model){
//将用户名保存到对应的作用域中
model.addAttribute("userName",userName);
return "welcome";
}