看到springmvc相關文章提到邏輯視圖和物理視圖?那么什么是邏輯視圖?什么是物理視圖呢?
- 在控制器方法中直接通過 ModelAndView.setView(View v)方法設置視圖對象,然后返回ModelAndView給前端控制器,這時的視圖就是物理視圖,因為它前端控制器不需要再使用視圖解析器來解析它,直接講視圖內容響應給客戶端;
- 而通過 控制器方法返回一個字符串,或者是通過 ModelAndView.setViewName(String viewName) 方法設置一個視圖名,此時的視圖成為邏輯視圖,因為前端控制器需要通過視圖解析器來解析邏輯視圖名,得到一個視圖對象,然后才響應給客戶端。
以上純屬個人理解!