Java程序開發中,Model和ModelAndView是兩個經常用到的概念。
Model是Spring MVC框架中用來封裝數據的JavaBean。通常情況下,Controller層返回的數據都是通過Model傳遞給前端視圖,供前端使用。
public class User { private String name; private int age; // get/set方法省略 }
上述代碼就是一個簡單的Model實例,封裝了用戶實體類的信息。在Controller層中使用如下代碼將Model傳遞給前端:
@RequestMapping("/user") public String getUser(Model model) { User user = new User(); user.setName("Tom"); user.setAge(20); model.addAttribute("user", user); return "user"; }
在前端頁面中可以如下方式展示Model數據:
<div> <span>姓名:</span>${user.name} <span>年齡:</span>${user.age} </div>
這樣就可以使用Model將后端的數據傳遞給前端進行展示了。
而ModelAndView則可以看作是Model和View的結合體。除了封裝了數據之外,ModelAndView還指定了該數據模型使用的視圖。
@RequestMapping("/user") public ModelAndView getUser() { User user = new User(); user.setName("Tom"); user.setAge(20); ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("user", user); modelAndView.setViewName("user"); return modelAndView; }
在前端頁面中同樣可以使用如下方式展示這個數據模型:
<div> <span>姓名:</span>${user.name} <span>年齡:</span>${user.age} </div>
Model和ModelAndView都是Spring MVC框架中的重要概念,開發者需要掌握其用法來實現數據的傳遞和展示。