先总结: 常用的是Model方式 传递
数据 输出: 如何将数据带给页面
SpringMVC除过在方法上传入原生的request和session外,还能怎么样把数据带给页面
方法一:
在方法出传入Map或者Model或者ModelMap。给这些参数里保存的数据都会放在域中,都可以在页面获取,域一共有四个,分别为pagecontext,request,session,application
在success.jsp页面:
试试其他的两种Model和ModelMap
两个都成功运行
三者的数据都放在了request 请求域中,为什么呢?
使用getclass()获取他们三者的类型,发现他们都是一样的
结论:
Map,Model和ModelMap:最终都是class org.springframework.validation.support.BindingAwareModelMap
在工作
相当于给BindingAwareModelMap
中保存的东西都会被放在请求域中
Map和Model都是接口,理由如下:
而ModelMap是一个类
方法的返回值可以变为ModelAndView类型
既包含视图信息(页面地址)也包含模型数据(给页面带的数据)
而且数据都是放在请求域中
放在请求request域中,好处就是当请求完了,请求就会消失,而放在session中,内容多了之后就容易崩了.
request域用的最多