1.请求转发和重定向的区别

请求重定向和请求转发都是web开发中资源跳转的方式。

请求转发是服务器内部的跳转

  地址栏比发生变化

  只有一个请求相应

  可以通过request域对跳转目标的请求

请求重定向是浏览器自动发起对跳转目标的请求

  地址栏会发生变化

  两次请求相应

   无法通过request域传递对象

2.SpringMVC中实现转发和重定向

(1)在SpringMVC中仍然可以使用传统方式实现转发和重定向

  request.getRequestDispatcher(" ").forward(request,response);

  response.sendRedirect(" ");

(2)在SpringMVC中也提供了快捷方式实现转发和重定向

只要在返回视图时,使用如下方式指定即可:

    /**
* 实现转发
*/
@RequestMapping("/hello11.action")
public String hello11(HttpServletRequest request){
request.setAttribute("name", "cjj");
return "forward:hello.action";
} /**
* 实现重定向
*/
@RequestMapping("/hello12.action")
public String hello12(HttpServletRequest request){
request.setAttribute("name", "cjj");
return "redirect:/hello.action";
}

(3)可以利用转发,实现允许用户访问WEB-INF下保存的指定资源

    /**
* 通过转发 实现 访问到在WEB-INF目录下的资源
* @throws Exception
*/
@RequestMapping("/toFile.action")
public String toFile(String vname){
if("form".equals(vname)){
return vname;
}else{
return "err";
}
}

SpringMVC中的重定向和转发的实现的更多相关文章

  1. servlet(jsp)中的重定向和转发

    servlet(jsp)中的重定向和转发 由一个servlet(jsp)从内部转向还有一个servlet(jsp)有两种方式:转发和重定向. 转发:是由一个web组件(servlet)将未完毕的处理交 ...

  2. 24SpringMvc中的重定向和转发-解释return "redirect:/cargo/contractproduct/tocreate.action";

    我在做JK项目时发现:我们在增加一个货物时.会先根据提交的Action()进入到一个新增页面 //跳转到新增的页面 @RequestMapping("/cargo/contractprodu ...

  3. web中的重定向与转发

    Redirect:重定向(客户端重定向) 是HTTP协议规定的一种机制:当client向server发送一个请求,要求获取一个资源时,在server接收到这个请求后发现请求的这个资源实际存放在另一个位 ...

  4. SpringMVC怎么样设定重定向和转发的?

    (1)转发:在返回值前面加"forward:",譬如"forward:user.do?name=method4" (2)重定向:在返回值前面加"red ...

  5. Servlet中的request对象、重定向和转发的差别(6)

    1.这里所说的request对象指的是HttpServletRequest对象,它代表client的请求,当client通过HTTP协议訪问server时.HTTP请求头中的全部信息都封装在这个对象中 ...

  6. SpringMVC中使用forward和redirect进行转发和重定向以及重定向时如何传参详解

    转自:http://blog.51cto.com/983836259/1877188 2016-11-28 09:45:59   如题所示,在SpringMVC中可以使用forward和redirec ...

  7. 关于SpringMVC中的转发与重定向的说明

    写的非常详细,参看该地址:https://www.zifangsky.cn/661.html 总结: 1.请求转发:url地址不变,可带参数,如?username=forward 2.请求重定向:ur ...

  8. SpringMVC 返回 html 视图页面,SpringMVC与Servlet,Servlet重定向与转发

    1. SpringMVC与Servlet的关系 SpringMVC框架是建立在Servlet之上的,提供各种功能,各种封装,各种方便的同时,它一点儿也没有限制Servlet,我们完全可以在Spring ...

  9. SpringMVC系列(九)自定义视图、重定向、转发

    一.自定义视图 1. 自定义一个视图HelloView.java,使用@Component注解交给Spring IOC容器处理 package com.study.springmvc.views; i ...

随机推荐

  1. Python Django 前后端数据交互 之 后端向前端发送数据

    Django 前后台的数据传递 严正声明:作者:psklf出处: http://www.cnblogs.com/psklf/archive/2016/05/30/5542612.html欢迎转载,但未 ...

  2. 如何以编程方式打印到在 MFC 中的非默认打印机

    http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763105790245b09c0252bd7a74a2485d315d2390f0750 ...

  3. iOS 9 通用链接(Universal Links)

    什么是Universal Links? 在iOS9之前,对于从各种从浏览器.Safari中唤醒APP的需求,我们通常只能使用scheme.但是这种方式需要提前判断系统中是否安装了能够响应此scheme ...

  4. 卡巴斯基KAV2013 – 免费一年 (六一活动)

    赠送时间:2013年5月31日10时 至 2013年6月1日24时赠送产品:卡巴斯基反病毒软件2013(一年版)赠送方式:产品激活码将以电邮方式发送到您提交信息的邮箱里,每个邮箱仅能领取一个激活码.温 ...

  5. 201621123010《Java程序设计》第14周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容. 2. 使用数据库技术改造你的系统 2.1 简述如何使用数据库技术改造你的系统.要建立什么表?截图你的表设计. 答 ...

  6. kmp算法中的nextval实例解释

    求nextval数组值有两种方法,一种是不依赖next数组值直接用观察法求得,一种方法是根据next数组值进行推理,两种方法均可使用,视更喜欢哪种方法而定. 本文主要分析nextval数组值的第二种方 ...

  7. mysql 易忽略点

  8. Python_常用的正则表达式处理函数

    正则表达式就是用查找字符串的,它能查找规则比较复杂的字符串反斜杠:正则表达式里面用"\"作为转义字符. s='<a class="h3" href=&qu ...

  9. TwoSum:两数相加得0

    在一个不重复的数组中,统计有多少组两个元素相加得0. 这里使用三种方式实现,并统计他们各自花费的时间: import java.util.Arrays; import java.util.HashMa ...

  10. conan-transit服上的库列表

    conan-transit服上的库列表 因为获取列表比较慢,所以获取后在此记录,以备查找.conan-transit 是个只读库,不会有更新.新的库将上传到 conan-center. conan是C ...