Model、Map、ModelMap的关系

1.他们都可以用来存放数据到页面,并且都在请求域(requestScope)中

@Controller
public class OutPutController {

    @RequestMapping("/handle01")
    public String handle01(Map<String,Object> map){
        map.put("msg","你是不是傻!");

        return "success";
    }
    @RequestMapping("/handle02")
    public String handle02(Model model){
        model.addAttribute("msg","我是Model");

        return "success";
    }
    @RequestMapping("/handle03")
    public String handle03(ModelMap modelMap){
        modelMap.addAttribute("msg","我是modelMap!");

        return "success";
    }
}
    <a href="handle01" >handle01</a><br/>
    <a href="handle02" >handle02</a><br/>
    <a href="handle03" >handle03</a><br/>
<h1>你成功了,666666</h1>
    pageContext:${pageScope.msg}<br/>
    request:${requestScope.msg}<br/>
    session:${sessionScope.msg}<br/>
    application:${applicationScope.msg}<br/>

2.通过上面我们知道了它们三个都是可以用来存在数据的,那么他们的底层是怎么实现的呢?下面我们来看:

2.1基本的知识:

ModelMap是一个类:

Modelt Map是接口

2.2 通过反射机制来得到他们三个的类型

xxxx.getClass()

2.3源码内部的关系

所以这三者不论使用哪一 个最后都是在隐含模型中的!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。