Springmvc结果跳转方法的示例分析-创新互联

这篇文章给大家分享的是有关Spring mvc结果跳转方法的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

为河南等地区用户提供了全套网页设计制作服务,及河南网站建设行业解决方案。主营业务为做网站、网站设计、河南网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

ModelAndView

设置ModelAndView对象 , 根据view的名称 , 和视图解析器跳到指定的页面 .

页面 : {视图解析器前缀} + viewName +{视图解析器后缀}



  
  
  
  

对应的controller类

public class ControllerTest1 implements Controller {

  public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
    //返回一个模型视图对象
    ModelAndView mv = new ModelAndView();
    mv.addObject("msg","ControllerTest1");
    mv.setViewName("test");
    return mv;
  }
}

ServletAPI

通过设置ServletAPI , 不需要视图解析器 .

  • 通过HttpServletResponse进行输出

  • 通过HttpServletResponse实现重定向

  • 通过HttpServletResponse实现转发

@Controller
public class ResultGo {

  @RequestMapping("/result/t1")
  public void test1(HttpServletRequest req, HttpServletResponse rsp) throws IOException {
    rsp.getWriter().println("Hello,Spring BY servlet API");
  }

  @RequestMapping("/result/t2")
  public void test2(HttpServletRequest req, HttpServletResponse rsp) throws IOException {
    rsp.sendRedirect("/index.jsp");
  }

  @RequestMapping("/result/t3")
  public void test3(HttpServletRequest req, HttpServletResponse rsp) throws Exception {
    //转发
    req.setAttribute("msg","/result/t3");
    req.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(req,rsp);
  }

}

SpringMVC

通过SpringMVC来实现转发和重定向 - 无需视图解析器;

测试前,需要将视图解析器注释掉

@Controller
public class ResultSpringMVC {
  @RequestMapping("/rsm/t1")
  public String test1(){
    //转发
    return "/index.jsp";
  }

  @RequestMapping("/rsm/t2")
  public String test2(){
    //转发二
    return "forward:/index.jsp";
  }

  @RequestMapping("/rsm/t3")
  public String test3(){
    //重定向
    return "redirect:/index.jsp";
  }
}

通过SpringMVC来实现转发和重定向 - 有视图解析器;

重定向 , 不需要视图解析器 , 本质就是重新请求一个新地方嘛 , 所以注意路径问题.

可以重定向到另外一个请求实现

@Controller
public class ResultSpringMVC2 {
  @RequestMapping("/rsm2/t1")
  public String test1(){
    //转发
    return "test";
  }
  @RequestMapping("/rsm2/t2")
  public String test2(){
    //重定向
    return "redirect:/index.jsp";
    //return "redirect:hello.do"; //hello.do为另一个请求/
  }

}

感谢各位的阅读!关于“Spring mvc结果跳转方法的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享标题:Springmvc结果跳转方法的示例分析-创新互联
转载源于:http://azwzsj.com/article/pigij.html