请求转发特点:

1. 浏览器地址栏路径不发生变化 还停留在首次访问的Servlet的URL
2. 只能转发到当前服务器内部资源中。
3. 转发是一次请求,可以使用request共享数据
4. 自我归纳:forward方式究竟是get还是post方式取决于第一次访问servlet方式 另外 href是get方式访问。

重定向:

1. 地址栏发生变化
2. 重定向可以访问其他站点(服务器)的资源
3. 重定向是两次请求。不能使用request对象来共享数据

对于request.getRequestDispatcher方法,它具有请求转发的功能,当通过service层查找到jsp页面需要的数据,需要将数据带给jsp页面的时候,就需要请求转发,于是servlet充当了“控制层”的作用。当然还可以根据数据的存活周期去判断采用什么方式去跳转页面,sendRedirect方式适合将数据存储到sesson中,这样再次请求服务器的时候可以得到session对象,通常应用于在登录成功后,采取重定向的方式。
如果想跳转页面,就必须告诉这两个函数资源的路径是什么?这里的资源当然指的是servlet和jsp。而今天所遇到的问题是,何时需要通过request.getContextPath。相信你也遇到过下面的错误。

路径使用引导:

1.判断定义的路径是谁在用?是浏览器还是服务器?
2.当你遇到下面几种情况,说明是浏览器,需要加虚拟目录。
1.当你遇到表单的时候,需要结合EL表达式引入request域对象中的虚拟路径。<form action="${pageContext.request.contextPath}/addUserServlet" method="post" id="form">
2.当你遇到超链接的时候,同样的方式引入虚拟目录。<ahref="${pageContext.request.contextPath}/ControllerServlet"></a><a                  href="javascript:deleteUser(${user.id});">删除</a>注意超链接方式是get方式,因此有时可以传参数。比如删除表格中的某一项需要获取其id的时候。
3.给服务器使用不需要加虚拟路径。
 //提供提示信息request.setAttribute("msg", "验证码错误");request.getRequestDispatcher("/login.jsp").forward(request, response);
4.特殊:sendRedirect方式必须加虚拟路径。
   response.sendRedirect(request.getContextPath()+"/ControllerServlet");

jsp重定向与请求转发的路径404问题相关推荐

  1. JSP中的重定向和请求转发以及它们的区别

    我们先硬着头皮看一下重定向的定义: 重定向(Redirect): 客户端浏览器向Web应用服务器端发送一个请求,Web服务器端使用HttpServletResponse的sendRedirect()方 ...

  2. 相对地址与绝对地址的区别?请求重定向与请求转发的区别?jsp有哪九大内置对象?servlet如何获取session和application对象?

    目录 1.说说相对地址与绝对地址的区别? 2.说说请求重定向与请求转发的区别? 3.jsp有哪九大内置对象?servlet如何获取session和application对象? 1.说说相对地址与绝对地 ...

  3. ssm 转发请求_springmvc(重定向和请求转发、数据的接收和回显)

    1.请求转发 (1)直接书写要转发的页面: @Controller public class HelloController{ @RequestMapping("/hello") ...

  4. 重定向与请求转发的区别及什么时候使用

    重定向与请求转发的区别 一 转发是服务器行为,重定向是客户端行为.为什么这样说呢,这就要看两个动作的工作流程: 转发过程:客户浏览器发送http请求-->web服务器接受此请求-->调用内 ...

  5. SpringMVC重定向与请求转发

    SpringMVC重定向与请求转发 一,请求转发 ①请求转发地址栏不会发生改变 ②请求转发只发送一次请求.能携带原有的参数 ③请求转发只可以在同一个服务器中进行转发 ④实际上视图解析器的转发本质也是请 ...

  6. java通过不同请求转发不同端口_java重定向与请求转发的区别

    请求转发: request.getRequestDispatcher().forward(); 重定向: response.sendRedirect(); 例如: 请求转发: request.getR ...

  7. 重定向与请求转发的具体讲解

    本篇供个人学习使用,有问题欢迎讨论 多个Servlet来处理同一次请求方案 一.前提 1.一个 servlet 只负责实现一个功能 2.浏览器在一次请求时,只能请求一个资源文件 3.如果浏览器的请求需 ...

  8. 分析:重定向和请求转发

    分析:重定向和请求转发 重定向 HttpServletResponse对象的sendRedirect(java.lang.String location)方法称作重定向. 如果location地址前面 ...

  9. 请求转发和重定向的区别_WEB之重定向和请求转发的区别

    一次重定向的过程 我的代码里面已经写好了,redirectAndFoward.jsp页面上有一个表单,表单重定向到redirectAndFowardTarget.jsp,那么这一次的重定向过程为: 1 ...

最新文章

  1. AppStore 提供的App信息查询的WebService
  2. Docker_基础知识
  3. SSH配置启动后Could not instantiate bean class [org.hibernate.cfg.AnnotationConfiguration
  4. OVM虚拟化平台安装成功后初始化配置方法!
  5. C# partial 关键字的使用
  6. react native ScrollView
  7. class path resource [logback.xml] cannot be resolved to URL because it does not exist 问题解决
  8. Linux dnssec原理,什么是DNSSEC?DNSSEC的概念及作用
  9. 如何使用迅雷下载百度网盘资源
  10. 我的大数据之路(一)-数据仓库也需要大数据
  11. SylixOS中AHCI驱动框架分析
  12. 教务系统mysql注入的原理_SQL注入原理及具体步骤
  13. latex学习记录1:图片文字排版
  14. mac上投屏android_简单实用的手机投屏Mac电脑
  15. CC2530F256RHAR收发器
  16. xsy3320 string
  17. 关于考研的几个潜规则
  18. 【你知道maven么?】
  19. 南大周志华写的For Potential Students
  20. django 热启动_uwsgi 热部署 热启动 热更新

热门文章

  1. 小米miui系统怎么关闭文件管理里的热门视频和表情?
  2. SQL语句备份和还原数据库
  3. javascript实现的图数据结构的广度优先 搜索(Breadth-First Search,BFS)和深度优先搜索(Depth-First Search,DFS)...
  4. 【leetcode】148. Sort List
  5. Oracle高效分页存储过程实例
  6. 工作经验到底是个什么东东?工作经验从哪里来?
  7. windows 7使用CAJViewer时出错显示缺少ReaderEX.dll处理
  8. 海思3531D上编译FFmpeg源码操作步骤
  9. 红帽linux系统更改主机名称,怎么在 redhat 中修改计算机名
  10. arial字体可以商用吗_每次做PPT都不知该怎么选字体?6种万能字体搭配组合送你...