SpringMVC控制层Controller中返回视图的两种方法

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";
    }

上面两种方式最后找到的视图

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章