大家在springmvc里一般把action层里的数据封装到哪里返回到jsp (封装到reques ModelAndView Model map) |
|
20分 |
ModelAndView 内部封装了Model ,因此剩下HttpServletRequest VS Model:
1、官方推荐使用Model。Spring框架一个最优秀的理念是无侵入式编程,Spring MVC的Controller,本质上就是POJO,是可以new出对象的,Servlet就不行吧,因为它需要上下文环境。因此这种无侵入式编程提供了非常友好的测试环境,也就是说对Controller类测试,并不需要启动Tomcat。 2、Model实际上是对HttpServletRequest 封装,内核都是Map容器。但是在上下文环境中,Model是否包含了Http协议内容,笔者没有测试过。例如有这么个场景,Controller的一个RequestMapping方法里需要从上下文环境中取出客户端的IP地址,HttpServletRequest 可以取出来,Model没有试过。因此这时候用了HttpServletRequest ,Model就多余了。 好像没有回答问题啊,那就用Spring官方推荐的Model。 |
10分 |
我推荐使用HttpServletRequest 。。。因为面向接口编程嘛,request就是个接口,减少耦合。。
1.测试的时候,可以使用requestImp实现一个request对象,注入到方法中,这个也不需要启动web server 2. request 接口本身包含Map容器。。。方便使用。。 |
有的项目是这样的 在函数里传参数 HttpServletRequest HttpServletResponse |
|
HttpServletRequest req, HttpServletResponse res,
|
|
我们项目都是放到ModelMap里
|