zoukankan      html  css  js  c++  java
  • 处理响应数据

    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";//返回视图名称
        }
  • 相关阅读:
    选择前端编辑器
    由看书引发的一些思考
    不是真饿的时候吃些饱腹感强的东西
    微信浏览网页骗局
    辣椒你还吃着吗
    观影感悟
    python中函数加括号与不加括号
    视频流媒体服务器直播点播平台可以接入其他平台播放视频吗?
    视频直播点播流媒体服务器报accept4 () failed (24: Too many open files)错误解决方法
    视频直播点播流媒体服务器报worker_connections are not enough错误解决方法
  • 原文地址:https://www.cnblogs.com/lemonzhang/p/12929835.html
Copyright © 2011-2022 走看看