首页 > 开发 > Java > 正文

springMvc请求的跳转和传值的方法

2024-07-13 10:04:03
字体:
来源:转载
供稿:网友

forword跳转页面的三种方式:

1.使用serlvet

/**   * 使用forward跳转,传递基本类型参数到页面   *   注意:   *     1.使用servlet原生API Request作用域   *        */  @RequestMapping("/test")  public String test(HttpServletRequest request,HttpServletResponse response){    String name = "张小三";    request.setAttribute("name",name);    return "/back/attr";  }

2.使用Model对象

/**   * 使用forward跳转,传递基本类型参数到页面   *   注意:   *     1.使用springmvc 封装好的Model对象(底层就是request作用域)   */  @RequestMapping("/test1")  public String test1(Model model){    String name = "张小四";    model.addAttribute("name", name);    return "back/attr";      }

3.使用ModelAndView

/**   * 使用modelAndView   *   注意事项   *     modelAndView对象中的数据只能被ModelAndView对象的视图获取   */  @RequestMapping("/test2")  public ModelAndView test2(ModelAndView modelAndView){    String name = "张小五";    modelAndView.setViewName("back/attr");    modelAndView.addObject("name", name);    return modelAndView;       }

当然也可以通过new 一个ModelAndView对象来实现

@RequestMapping("/test3")  public ModelAndView test3(){    String name = "张小六";    return new ModelAndView("back/attr", "name", name);  }

forword跳转到Controller中的方法:

跳转到相同类中的方法

/**   * 使用forword跳转到相同类中的某一方法   * 注意:   *     1.不需要加上类上的@RequestMapping的值   */  @RequestMapping("/test00")  public String test00(){    return "forward:test1";  }

跳转到不同类中的方法:

/**   * 使用forword跳转到不同类中的某一方法   * 注意:   *     1.需要加上类上的@RequestMapping的值:比如 :/hello   */  @RequestMapping("/test01")  public String test01(){    return "forward:/hello/test";  }

redirect跳转到页面:

 使用servlet

/**   * 使用redirect跳转 向页面传递数据   *     1.使用Servlet原生API Session ServletContext   */    @RequestMapping("/test4")  public String test4(HttpServletRequest request,HttpSession session){    String name = "张晓霞";    session.setAttribute("name", name);    return "redirect:/back/attr.jsp";  }

使用ModelAndView

/**   * 使用redirect跳转 向页面传递数据   *     1..使用ModelAndView对象 modelAndView对象会把model中的数据以?形式拼接到地址栏后 可以使用${param.key}接受   */  @RequestMapping("/test5")  public ModelAndView test5(){    return new ModelAndView("redirect:/back/attr.jsp","name","小张张");  }

redirect跳转到Controller中的方法:

跳转到同类和不同类的方法都需要加上类上的@RequestMapping,就不粘出测试代码了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表