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

上面兩種方式最後找到的視圖

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