zoukankan      html  css  js  c++  java
  • sring mvc 返回值至jsp界面的几种方式

    Spring 通过Controller 向 View 传值的方法有以下四种

    1. HttpServletRequest
    2. ModelAndView
    3. Map<String, Object> map
    4. Model model

    第一种

    需要参数HttpServletRequest 返回值是jsp页面

    @RequestMapping("/query1.do")

    public String queryUser1(HttpServletRequest request){

        

         String name = "张三";

         request.setAttribute("name", name);

        

         UserInfo user = new UserInfo();

         user.setUserId(9257);

         user.setUserName("华安");

        

         request.setAttribute("user", user);

        

         return "query";

    }

    第二种 ModelAndView 返回值是ModelAndView 参数不需要

    @RequestMapping("/query2.do")

        public ModelAndView queryUser2(){

           

            UserInfo user = new UserInfo();

            user.setUserId(1001);

            user.setUserName("秋香");

           

            //model

            Map<String,Object> map = new HashMap<String,Object>();

            map.put("user2", user);

           

            return new ModelAndView("query",map);

        }

    第三种 参数是Map 返回值是jsp页面

    @RequestMapping("/query3.do")

        public String queryUser3(Map<String,Object> map){

           

            UserInfo user = new UserInfo();

            user.setUserId(1002);

            user.setUserName("石榴");

       

            map.put("user3", user);

           

            return "query";

        }

    第四种 参数是Model 返回值是jsp 使用model的addAttribute方法

    @RequestMapping("/query4.do")

      public String queryUser4(Model  model){

         

         

          UserInfo user  = new UserInfo();

          user.setUserId(1);

          user.setUserName("华夫人");

         

          model.addAttribute("user4", user);

         

          return "query";

      }

    但是无论哪一种方式 简单参数或对象都可以通过变量名来显示

    userId:${user4.userId }

    userName:${user4.userName }

    但是数组的返回值会显示则会有问题,如:直接返回数组

        @RequestMapping("/query5.do")

        public String queryUser5(Model  model){

            UserInfo user  = new UserInfo();

            user.setUserId(1);

            user.setUserName("华夫人");

           

            List<UserInfo> list = new ArrayList<UserInfo>();

           

            list.add(user);

            list.add(user);

            list.add(user);

           

            model.addAttribute("list", list);

           

            return "query";

        }

       

    userId:${list}

    list:[UserInfo [userId=1, userPw=null, userName=华夫人, userAge=null, userBrithday=null, xqs=null], UserInfo [userId=1, userPw=null, userName=华夫人, userAge=null, userBrithday=null, xqs=null], UserInfo [userId=1, userPw=null, userName=华夫人, userAge=null, userBrithday=null, xqs=null]]

  • 相关阅读:
    买房的贷款时间是否是越长越好?https://www.zhihu.com/question/20842791
    asp.net cookie and session
    leelazero and google colab
    download file by python in google colab
    physical processor, core, logical processor
    通过powershell操作eventlog
    openxml in sql server
    get the page name from url
    How to Execute Page_Load() in Page's Base Class?
    Difference between HttpContext.Request and Request
  • 原文地址:https://www.cnblogs.com/oftenlin/p/4199844.html
Copyright © 2011-2022 走看看