zoukankan      html  css  js  c++  java
  • 在map、model、modelAndView中存放数据 回显

    复杂参数

    在map、model、modelAndView中存放数据,本质上都是在request中存放数据

    controller层

    package com.xiang.controller;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.ui.ModelMap;
    import org.springframework.web.bind.annotation.RequestAttribute;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.ResponseBody;
    import org.springframework.web.servlet.ModelAndView;
    
    import javax.servlet.http.HttpServletRequest;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.Map;
    
    /**
     * Created by IntelliJ IDEA.
     * User: xiang
     * Date: 2021/10/14 0:47
     */
    @Controller
    public class RequestAttributeController2 {
        @RequestMapping("/fo3")
        public String fo3(HttpServletRequest request, Map<String, Object> map, Model model, ModelMap modelMap, ModelAndView modelAndView) {
    //    存在数据
            request.setAttribute("name", "xiang");
            map.put("gender", "男");
            model.addAttribute("age", 18);
            modelMap.addAttribute("classNo", "软件一班");
    //        modelAndView.getModel().put("stuNum", 19301041); //这儿有bug 数据回显为 null
           modelAndView.addObject("stuNum", 19301041);
    //    转发到另一个controller中
            return "forward:/fo4";
        }
    
        @ResponseBody
        @RequestMapping("/fo4")
        public Object fo4(HttpServletRequest request,
                          @RequestAttribute("name") String name,
                          @RequestAttribute("gender") String gender,
                          @RequestAttribute("age") Integer age,
                          @RequestAttribute("classNo") String classNo,
                          @RequestAttribute(value = "stuNum", required = false) Integer stuNum) //required = false 不写这个会报错;
    
        {
            HashMap<Object, Object> map = new HashMap<>();
            map.put("name", "向向");
            map.put("gender", "男");
            map.put("age", 20);
            map.put("classNo", "软件开发一班");
            map.put("stuNum", 123456);
            System.out.println(map);
    //        return map;
    
            ArrayList<Object> list = new ArrayList<>();
            request.setAttribute("id", 001);
            Object name1 = request.getAttribute("name");
            Object gender1 = request.getAttribute("gender");
            Object age1 = request.getAttribute("age");
            Object classNo1 = request.getAttribute("classNo");
            Object stuNum1 = request.getAttribute("stuNum");
            list.add(name1);
            list.add(gender1);
            list.add(age1);
            list.add(classNo1);
            list.add(stuNum1);
            System.out.println(list);
    //        return list;
    
            ArrayList<Object> arrayList = new ArrayList<>();
            arrayList.add(map);
            arrayList.add(list);
            return arrayList;
    
        }
    }
    
    

    运行结果

  • 相关阅读:
    SpringBoot国际化和国际化失败的原因
    java之上传文件、下载文件
    java之拦截器Interceptor/自定义视图解析器
    idea配置tomcat,idea和tomcat版本不一致输出json会报500错误,解决localhost:8080 is already in use问题,解决idea控制台日志乱码
    guzzle json 请求
    Testlib-Generator使用笔记
    Harbour.Space Scholarship Contest 2021-2022 (Div. 1 + Div. 2) 题解 (ABCDEF)
    Codeforces Round #731 (Div. 3) 题解 (DEFG)
    面试题
    yaml部署
  • 原文地址:https://www.cnblogs.com/d534/p/15411604.html
Copyright © 2011-2022 走看看