一、 ModelAndView
-
作用:设置转向地址和传递控制方法处理结果数据到结果页面
-
概念:指模型和视图的集合,即包含模型又包含了视图;ModelAndView的实例是开发者自己手动创建的。
-
设置ModelAndView跳转的两种方式:
//实例1:
ModelAndView mad = new ModelAndView("View");
//View是跳转的jsp页面
//实例2:
public ModelAndView method(){
ModelAndView mad = new ModelAndView();
mad.setViewName("View");
//给ModelAndView设置跳转页面的名字
mad.addObject("message","值");
//设置键对值
return mad;//返回值
}
二、ModelMap
- 作用:ModelMap对象主要用于传递控制方法处理数据到结果页面,类似于request对象的setAttribute方法的作用。
- ModelMap继承LinkedHashMap,spring框架自动创建实例并作为Controller的,用户无需自己创建,实现了Map接口,包含Map方法,ModelMap只包含模型的信息。
//在jsp页面中创建一个超链接标签
<a href="lei/method/Hello">点击我返回到Controller类</a>
//在class类中定义一个方法,利用@PathVariable()方法来接收前端传过来的值
@Controller
@RequestMapping("lei")
public class Test(){
@RequestMapping("method/{lin}")
public String model(@PathVariable("lin") String name,ModelMap mdl){
mdl.addAttribute("jian","给mdl添加的内容");
}
}
//再重新创建一个jsp页面用来返回到视图(View)
${jian}
最后配置web.xml和xxx-servlet.xml配置文件。
不论是ModelAndView还是ModleMap,都是从后台传值给前端。