zoukankan      html  css  js  c++  java
  • SpringMVC的请求转发的三种方法

    SpringMVC请求转发的三种方法

    首先明白请求转发是一次请求,地址栏不会发生变化,区别于重定向。springmvc环境自行配置。

    以下举例中存在如下文件/WEB-INF/pages/success.jsp

    请求转发的第一种情况:请求转发经过视图解析器

     前端页面

    <a href="${pageContext.request.contextPath}/forwardMvcView">请求转发经过视图解析器</a>

    后台代码

    @RequestMapping("/forwardMvcView")
    public String forwardMvcView(){
    return "success";
    }

    上面就是一种请求转发

    请求转发的第二种情况:不经过视图解析器

    前端页面

    <a href="${pageContext.request.contextPath}/forwardView">请求转发经过视图解析器</a>

    后台代码(由于不经过视图解析器,所以需要自己拼接前后缀)forward:关键字后面的路径表示不再经过视图解析器

    @RequestMapping("/forwardView")
    public String forwardView(){
    return "forward:/WEB_INF/pages/success.jsp";
    }

    请求转发的第三种情况:请求转发传统的方式——原生Servlet

    前端页面

    <a href="${pageContext.request.contextPath}/forwardCommon">请求转发经过视图解析器</a>

    后台代码

    @RequestMapping("/forwardCommon")
    public  forwardCommon(HttpServletRequest request,HttpServletResponse response){
      request.getServletDispatcher("/WEB-INF/pages/success.jsp").forward(request,response);
    }
  • 相关阅读:
    理解javascript作用域及hosting机制
    angular分页指令
    python 设计模式之门面模式
    代码Rework中的反思
    python 设计模式之观察者模式
    python 设计模式之命令模式
    Django性能调优
    python 设计模式之MVC模式
    httperf+autobench测试web应用
    对工作的感悟
  • 原文地址:https://www.cnblogs.com/kitor/p/10987217.html
Copyright © 2011-2022 走看看