视图解析,请求Controller返回的视图类型:
@Controller
@RequestMapping("/test")public classTestController {//正常返回ModelAndView
@RequestMapping("/modelAndView")publicModelAndView retModelAndView(){
ModelAndView mv= new ModelAndView("hello");
mv.addObject("msg","正常ModelAndView的返回");returnmv;
}//返回json视图(json格式的数据)
@RequestMapping("/jsonView")
@ResponseBody//通过这个注解声明 返回json格式数据
public ListreturnJsonView() {
List list = new ArrayList<>();
Book book1= newBook();
book1.setId(1);
book1.setName("降龙十八掌");
book1.setDesc("最难是亢龙有悔");
list.add(book1);
Book book2= newBook();
book2.setId(2);
book2.setName("凌波微步");
book2.setDesc("走为上");
list.add(book2);returnlist;
}//不做任何操作直接返回视图名称(jsp页面) 前提是要有这个jsp页面
@RequestMapping("/viewName")publicString returnViewName() {
String viewName= "index";returnviewName;
}//重定向
@RequestMapping("/redirect")publicString returnRedirect(){//返回值以 redirect: 开头后面跟上url
return "redirect:/test/jsonView.do";
}//请求转发
@RequestMapping("/forward")publicString returnForward(){//返回值以 forward: 开头后面跟上url
return "forward:/test/jsonView.do";
}//不返回视图,只返回状态码
@RequestMapping("/noView")
@ResponseStatus(HttpStatus.OK)public voidreturnNoView(){
}
}
返回json视图需要的jar包:jackson-da