zoukankan      html  css  js  c++  java
  • SpringMVC视图解析中的 forward: 与 redirect: 前缀

    在 SpringMVC 中,可以指定画面的跳转方式。使用 forward: 前缀实现请求转发跳转,使用 redirect: 前缀实现重定向跳转。有前缀的转发和重定向操作和配置的视图解析器没有关系,视图解析器不会进行拼串。

    请求转发前缀—forward:

    使用请求转发跳转方式,url 地址不会改变,一次请求一次相应,跳转到的地址可以获得 request 中的数据。

        /**
         * 请求转发
         */
        @RequestMapping("/hello")
        public String hello(HttpServletRequest request){
            // 跳转到的地址能获得 name 中的值
            request.setAttribute("name", "jack");
            // 当前项目下的 hello.jsp 页面,请区别配置视图解析器的返回值,这里不会进行拼串
            return "forward:/hello.jsp";
        }
    

    重定向前缀—redirect:

    使用重定向跳转方式,url 地址会改变,两次请求两次相应,跳转到的地址不可以获得 request 中的数据(因为是两次请求)。

        /**
         * 重定向
         */
        @RequestMapping("/hello")
        public String hello(HttpServletRequest request){
            // 跳转到的地址无法获得 name 中的值
            request.setAttribute("name", "jack");
            // 不需要添加当前的项目名,SpringMVC会自动的添加项目名
            return "redirect:/hello.jsp";
        }
    

    由于重定向方式无法传递参数,解决方法请参考 RedirectAttributes 这一章节。

  • 相关阅读:
    翘边阴影
    原生js实现 拖拽事件
    js实现计算器
    js实现选项卡
    js随机生成座号
    1.记住密码 提示框
    媒体查询
    高性能JavaScript 读书笔记
    調用WEB services
    Dragon Quest VIII 流程攻略(繁体中文完结版)
  • 原文地址:https://www.cnblogs.com/lemon-coke-pudding/p/12774992.html
Copyright © 2011-2022 走看看