
出处: PC的个人Blog
1. 接受请求参数及其数据回显@RequestParam 用来进行参数传递的重命名
@GetMapping("/g1")
public String test3(@RequestParam("username") String name, Model model) {
System.out.println("接受到前端的参数为 :" +name);
model.addAttribute("msg", name);
return "test";
}
前端url为
http://localhost:8080/g1?username=wode
将username代替为name进行传递
前端接受一个对象
前端会自己识别传入参数,将参数带入到对象中的参数值里
http://localhost:8080/g2?id=1&name=peng&age=3
其中类中参数名字和url传参名字要一致,否则相对应参数要变为null
@GetMapping("/g2")
public String test4(User user) {
System.out.println("接受到前端的参数为 :" +user);
return "test";
}
参数回显容器
Model
数据传递:Model是通过addAttribute方法向页面传递数据的;
数据获取:JSP页面可以通过el表达式或C标签库的方法获取数据;
return:return返回的是指定的页面路径;
ModelMap 继承了linkedMap
ModelMap的使用与Model相同,ModelMap是一种特殊的Model,一般来说,Model可以接收各种类型的数据,如果接收的数据是List,那么这个时候Model实际上是ModelMap。
ModelAndView 可以存储数据,进行返回的逻辑视图,进行控制展示层的跳转
数据传递:ModelAndView通过addObject方法向页面传递数据;
数据获取:JSP页面可以通过el表达式或C标签库的方法获取数据(与Model的获取方式相同);
return:return返回的是ModelAndView对象;
ModelAndView设置跳转地址有两个方式:
第一种:在new ModelAndView时添加地址参数,如:
ModelAndView mav = new ModelAndView("test");
第二种:使用ModelAndView的setViewname(String)方法去设置,如:
mav.setViewName("test");
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response,
Object handler, Exception ex) {
LibraryException le=null;
if(ex instanceof LibraryException){
le=(LibraryException)ex;
}else{
le=new LibraryException("系统未知异常!");
}
ModelAndView modelAndView=new ModelAndView();
modelAndView.addObject("exception",le.getMessage());
modelAndView.getModel().put("exception",le.getMessage());
modelAndView.setViewName("error");
return modelAndView;
}