@RequestMapping("/userlist.do") public String getUserList(Model model){ HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest(); model.addAttribute("userList", sysUserService.findAll()); return "user_list"; }
通常在编码时,只需要往model中addAttribute()值后,就可以在JSP中通过EL表表达式,或者JSTL标签直接取到值了:
常规的理解是,EL和JSTL只是取Request、Session等作用域中的数据的,那么SpringMVC何时将代码中的model中的“userList”集合数据转存到了request作用域中的呢?
DEBUG SpringMVC源码之DispatchServlet的1208行----->AbstractView第367行才明了:
SpringMVC控制器设值原理分析(ModelAndView的值通过HttpServletRequest直接取到的原因),布布扣,bubuko.com
SpringMVC控制器设值原理分析(ModelAndView的值通过HttpServletRequest直接取到的原因)