zoukankan      html  css  js  c++  java
  • springmvc中的数据传递

    import javax.servlet.http.HttpServletRequest;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.servlet.ModelAndView;
    
    @Controller
    public class Params {
    
        public Params() {
            System.out.println("costructor....");
        }
    
        /*
         * 方式1:通过注入httpServletRequest进行参数设置,并跟随返回的视图传递到页面
         */
        @RequestMapping("/ppp1")
        public String param(HttpServletRequest req) {
            req.setAttribute("msg", "you");
            return "/WEB-INF/hello.jsp";
        }
    
        /*
         * 方式2:通过原始的modelAndView设置模型数据和视图名称,,并返回
         */
        @RequestMapping("/ppp2")
        public ModelAndView param2() {
            ModelAndView mav = new ModelAndView();
            User user = new User();
            user.setName("俩后");
            mav.addObject("user", user);
            mav.setViewName("/WEB-INF/hello.jsp");
            mav.addObject("msg", "ck");
            return mav;
        }
    
        /*
         * 方式3:通过向方法注入形参Model类的对象,该对象由spring自动功能创建添加,model对象添加模型数据
         * 而返回的字符串负责指向要跳转的视图名称
         */
        @RequestMapping("/ppp3")
        public String param3(Model model) {
            User user = new User();
            user.setName("俩后的");
            model.addAttribute("user", user);
            model.addAttribute("msg", "ck");
            return "/WEB-INF/hello.jsp";
        }
        /*
         * 方式4:直接将返回值作为模型对象返回
         * 此时,视图名就是该方法的访问地址,即/ppp4,
         */
        @RequestMapping("/ppp4")
        public User param4() {
            User user = new User();
            user.setName("俩后的");
            return user;
        }
    }

    上面四种方式都是将数据放在request作用域中的,通过${requestScope.xxx}可以取出数据

  • 相关阅读:
    第二阶段冲刺总结09
    第二阶段冲刺总结08
    第二阶段冲刺总结07
    51nod 1799 二分答案(分块打表)
    51nod 1574 排列转换(贪心+鸽巢原理)
    Codeforces 618D Hamiltonian Spanning Tree(树的最小路径覆盖)
    Codeforces 627D Preorder Test(二分+树形DP)
    BZOJ 2427 软件安装(强连通分量+树形背包)
    BZOJ 2467 生成树(组合数学)
    BZOJ 2462 矩阵模板(二维hash)
  • 原文地址:https://www.cnblogs.com/tabchanj/p/5697215.html
Copyright © 2011-2022 走看看