• 处理响应数据


    SpringMVC 输出模型数据概述
    提供了以下几种途径输出模型数据
      1) ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据
      2) Map 或 Model: 入参为 org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map 时,处理方法返回时,Map 中的数据会自动添加到模型中。
     
    处理模型数据之 ModelAndView
    1、 ModelAndView介绍
       控制器处理方法的返回值如果为 ModelAndView, 则其既包含视图信息,也包含模型数据信息。
      1) 两个重要的成员变量:
        private Object view;      视图信息
        private ModelMap model; 模型数据
      2)添加模型数据:
        MoelAndView addObject(String attributeName, Object attributeValue)   设置模型数据
        ModelAndView addAllObject(Map<String, ?> modelMap)
      3)设置视图:
        void setView(View view)                设置视图对象
        void setViewName(String viewName)     设置视图名字
      4)获取模型数据
            protected Map<String, Object> getModelInternal()   获取模型数据
            public ModelMap getModelMap()
            public Map<String, Object> getModel()
    /*
         * springMVC处理请求过程中,往作用域中放值有以下三种方式
         * 总结:根据ModelAndView源码调试,不管使用以下那种方式,最终都会把model数据和view数据封装到一个ModelAndView中
         */
        
        @RequestMapping(value="/param", method=RequestMethod.POST)
        public ModelAndView param() {
            ModelAndView mav = new ModelAndView();
            mav.addObject("username", "root");//往request作用域中放值
            mav.setViewName("success");//设置视图名称,实现页面跳转
            return mav;
        }
        
        @RequestMapping(value="/param", method=RequestMethod.POST)
        public String param(Map<String, Object> map) {
            map.put("username", "admin");//向作用域中放值
            return "success";//返回视图名称
        }
        
        @RequestMapping(value="/param", method=RequestMethod.POST)
        public String param(Model model) {
            model.addAttribute("username", "张三");//向作用域中放值
            return "success";//返回视图名称
        }
  • 相关阅读:
    DeflateStream类
    BufferedStream类
    FileStream类
    Asp.net MVC Comet 推送
    MVC 读书笔记
    MVC部署
    MVC系统过滤器、自定义过滤器
    MVC 路由规则
    MVC 模型绑定
    边双+点双模板
  • 原文地址:https://www.cnblogs.com/lemonzhang/p/12929835.html
Copyright © 2020-2023  润新知