1.方法一
通过创建ModelAndView对象,添加mode数据,设置model和view然后返回
@RequestMapping("/test01.action")
public ModelAndView test01(){
System.out.println("my01--test01");
ModelAndView mav = new ModelAndView();
//添加mode数据
mav.addObject("k1","v1");
mav.addObject("k2","v2");
//添加model
mav.setViewName("my01test01");
//返回model and view
return mav;
}
2.方法二
传入一个Model对象用来存储数据,然后返回一个字符串,框架会自动解析为视图
/**
* String[] value() default {};属性
* 用来讲路径绑定到当前控制器方法上
* 此属性是一个数组,可以将多个路径绑定到该方法上
* 配置的路径中可以使用* 通配符来通配路径
* 如果不返回,那么默认会用/my01/test02.action去掉后缀去找即去找/my01/test02.jsp
*/
//Model 只能存模型数据 ,下面2种写法等价
//@RequestMapping(value = {"/test02.action"})
@RequestMapping("/test02.action")
public String test02(Model model){
model.addAttribute("k3","v3");
model.addAttribute("k4","v4");
//视图直接返回字符串,默认会把返回的字符串当做视图名称使用,比方法一更加简单
return "my01test02";
}
上面两种方式最后找到的视图