1.跳转包括两种方式:

  • 转发 forward

  • 重定向 redirect

2.两种方式的代码:

AServlet类:
//向request范围中存储数据
request.setAttribute("username","zhangsan"); //转发forward:一次请求
//request.getRequestDispatcher("/b").forward(request,response); //另外一种跳转方式是重定向
//重定向redirect:两次请求
//执行到此处之后将这个路径相应给浏览器,浏览器又向服务器发送了一次全新的请求
response.sendRedirect("/prj_servlet_16_war_exploded/b"); BServlet类:
//从request范围中取数据
Object obj = request.getAttribute("username");
System.out.println(obj); - 转发
request.getRequestDispatcher("/b").forward(request,response); - 重定向:
response.sendRedirect(request.getContextPath() + "/b");

3.转发和重定向的相同点和不同点:

- 相同点:
都可以完成资源跳转 - 不同点:
* 触发对象不同:
转发是request对象触发的,重定向是response对象触发的
* 请求次数不同
转发是一次请求,浏览器地址栏上地址不会变化,重定向是两次请求,浏览器地址栏上的地址发生变化[/a-->/b]
* 路径不同
重定向的路径需要加webapp的根路径,转发是在本项目内完成资源跳转
* 可跨范围不同
重定向可以完成跨项目跳转,跨app跳转资源

4.跳转的下一个资源可以是什么?

  • 跳转的下一个资源可以是web服务器中任何一种资源:可以是Servlet,也可以是html,也可以是JSP...

5.什么时候采用转发,什么时候采用重定向?[大部分情况下都使用重定向]

* 若想完成跨app跳转,必须使用重定向
* 若在上一个资源中向request范围中存储数据希望在下一个资源中从request范围中将数据取出必须使用转发
* 重定向可以解决浏览器的刷新问题

6.重定向原理是什么?

a.response.sendRedirect("/jd/login");

b.程序执行到以上代码,将请求路径/jd/login反馈给浏览器,

c.浏览器自动又向web服务器发送了一次全新的请求:/jd/b

d.浏览器地址栏上最终显示的地址是:/jd/login

关于web项目中的资源跳转的更多相关文章

  1. web项目中实现页面跳转的两种方式

    <a href="javascript:"></a>跳转在网页本身,URL不改变 <a href="#"></a> ...

  2. java web项目中打开资源文件中文乱码

    1 java web项目中经常使用多模块管理.在某一个模块中添加了一些资源文件.但不是启动项目.有时候需要在程序中读取资源文件内容,打包后放到容器中就不能正常运行了.需要将所有资源文件放到启动项目的 ...

  3. 关于web项目中静态资源加载不了的一些解决思路

    问题的产生: <!--springMVC前端控制器加载--> <servlet> <servlet-name>springmvc</servlet-name& ...

  4. web项目中各种路径的获取(复制,为以后好找资源)

    web项目中各种路径的获取 1.可以在servlet的init方法里 String path = getServletContext().getRealPath("/"); 这将获 ...

  5. 在web项目中使用shiro(认证、授权)

    一.在web项目中实现认证 第一步,在web项目中导入shiro依赖的包 第二步,在web.xml中声明shiro拦截权限的过滤器 <filter> <filter-name> ...

  6. JAVA WEB项目中各种路径的获取

    JAVA WEB项目中各种路径的获取 标签: java webpath文件路径 2014-02-14 15:04 1746人阅读 评论(0) 收藏 举报  分类: JAVA开发(41)  1.可以在s ...

  7. 【Filter 不登陆无法访问】web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面的功能

    在web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面,而重定向到登陆界面的功能. 项目是用springMVC+spring+hibernate实现 (和这个没有多大关系) 第一步: 首先 ...

  8. 转 web项目中的web.xml元素解析

    转 web项目中的web.xml元素解析 发表于1年前(2014-11-26 15:45)   阅读(497) | 评论(0) 16人收藏此文章, 我要收藏 赞0 上海源创会5月15日与你相约[玫瑰里 ...

  9. (转)关于java和web项目中的相对路径问题

    原文:http://blog.csdn.net/yethyeth/article/details/1623283 关于java和web项目中的相对路径问题 分类: java 2007-05-23 22 ...

随机推荐

  1. vue3.0入门(五):vite构建vue项目

    使用vite构建项目步骤 安装node,cmd输入:node -v验证是否安装成功:一般node安装后会自动安装npm,cmd输入:npm -v验证是否安装成功 选择一个文件夹作为项目文件夹,搜索框输 ...

  2. golang——rune

    byte 等同于int8,常用来处理ascii字符 rune等同于int32,常用来处理unicode或utf-8字符//可以处理中文

  3. kubebuilder实战之七:webhook

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  4. MySQL的主从复制步骤详解及常见错误解决方法

    mysql主从复制(replication同步)现在企业用的比较多,也很成熟.它有以下优点: 1.降低主服务器压力,可在从库上执行查询工作. 2.在从库上进行备份,避免影响主服务器服务. 3.当主库出 ...

  5. CSS布局中最小高度的妙用

    CSS布局中最小高度的妙用 --最小高度可以设定一个BOX的最小高度,当其内容较少时时,也能保持BOX的高度为一定,超出就自动向下延伸最小高度可以设定一个BOX的最小高度,当其内容较少时时,也能保持B ...

  6. 【Office Excel】vlookup函数的反向查找实例教程,不只是正向查找,还可以反向查找,实例讲解

    VLOOKUP 反向查询 众所周知,vlookup只能从左向右查找,而不能从右至左的反向查找.为此高手们设计了一个让无数新手迷惑的公式.今天优爱酷将彻底帮同学们解开这个迷团. [例]如下图所示要求根据 ...

  7. Vs code自动生成Doxygen格式注释

    前言 ​ 程序中注释的规范和统一性的重要性不言而喻,本文就推荐一种在用vscode编写代码时自动化生成标准化注释格式的方法,关于Doxygen规范及其使用可查看博文 代码注释规范之Doxygen. ​ ...

  8. MongoDB 常见问题 - 解决找不到 mongo、mongod 命令的问题

    问题背景 成功安装 MongoDB 后执行 Mongo.MongoD 显示找不到命令 解决方案 echo 'export PATH="/usr/local/opt/mongodb-commu ...

  9. netfilter框架之hook点

    1. Netfilter中hook的所在位置 当网络上有数据包到来时,由驱动程序将数据包从网卡内存区通过DMA转移到设备主存区(内存区), 之后触发中断通知CPU进行异步响应,之后ip_rcv函数会被 ...

  10. 显示锁lock

    一.内置锁sync 和 显示锁lock概念 1.synv锁又叫内置锁,不能中断,拿不到无限等待即阻塞: java自带关键字: 隐式可重入: 重入锁:锁对应对象要多次调用对应方法,如递归 2. lock ...