springMvc向页面传值和读取的方式

springMvc向页面传值和读取的方式


向页面传值的四种方式:

/**
     * 向页面传值的第一种方式,绑定数据到request对象
     * @param admin
     * @param request
     * @return
     */
    @RequestMapping("/login4.do")
    public String checkLogin4(Admin admin,HttpServletRequest request){
        //将数据绑定到request,springmvc使用转发机制来跳转
        request.setAttribute("adminCode",admin.getAdminCode());
        System.out.println(admin.getAdminCode()+"44444444444"+admin.getPwd());
        return "index";
    }

    /**
     * 向页面传参的第二种方式:返回ModelAndView对象
     * @param admin
     * @return
     */
    @RequestMapping("/login5.do")
    public ModelAndView checkLogin5(Admin admin){
        Map<String,Object> data = new HashMap<String,Object>();
        //相当于request.setAttribute
        data.put("adminCode",admin.getAdminCode());
        ModelAndView mav = new ModelAndView("index",data);
        System.out.println(admin.getAdminCode()+"555555555"+admin.getPwd());
        return mav;
    }

    /**
     * 向页面传值的第三种方式
     * 使用ModelMap作为方法的入参
     * @param admin
     * @param mm
     * @return
     */
    @RequestMapping("/login6.do")
    public String checkLogin6(Admin admin, ModelMap mm){
        System.out.println(admin.getAdminCode()+"666666"+admin.getPwd());
        //相当于request.setAttribute
        mm.addAttribute("adminCode",admin.getAdminCode());
        return "index";
    }

    /**
     * 向页面传值的第四种方式
     * 将数据绑定到session对象
     * @param admin
     * @param session
     * @return
     */
    @RequestMapping("/login7.do")
    public String checkLogin7(Admin admin, HttpSession session){
        System.out.println(admin.getAdminCode()+"77777"+admin.getPwd());
        session.setAttribute("adminCode",admin.getAdminCode());
        return "index";
    }

读取请求参数值的三种方式:

 /**
     * 获取请求参数的第一种方式:request
     */
    @RequestMapping("/login.do")
    public String checkLogin(HttpServletRequest request){
        String adminCode = request.getParameter("adminCode");
        String pwd = request.getParameter("pwd");
        System.out.println(adminCode+","+pwd);
        return "index";
    }

    /**
     * 读取请求参数的第二种方式
     * 使用@RequestParam,最好每个参数都加上
     * @param adminCode
     * @param pwd
     * @return
     */
    @RequestMapping("/login2.do")
    public String checkLogin2(@RequestParam("adminCode") String adminCode,String pwd){
        System.out.println(adminCode +"88888"+pwd);
        return "index";
    }

    /**
     * 读取请求参数的第三种方式
     * 封装成javabean
     * @param admin
     * @return
     */
    @RequestMapping("/login3.do")
    public String checkLogin3(Admin admin){
        System.out.println(admin.getAdminCode()+"6666666"+admin.getPwd());
        return "index";
    }

重定向的二种方式:

/**
     * 重定向的第一种方式
     * @return
     */
    @RequestMapping("/login8.do")
    public String checkLogin8(){
        System.out.println("checkLogin8()");
        return "redirect:/hello.do";
    }

    /**
     * 重定向的第二种方式
     * @return
     */
    @RequestMapping("/login9.do")
    public ModelAndView checkLogin9(){
        System.out.println("checkLogin9()");
        RedirectView rv = new RedirectView("hello.do");
        return new ModelAndView(rv);
    }

猜你喜欢

转载自blog.csdn.net/qq_38729043/article/details/78668747