• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JSP > jsp跳转getRequestDispatcher()和sendRedirect()的区别

jsp跳转getRequestDispatcher()和sendRedirect()的区别

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了jsp redirect,jsp sendredirect,request.sendredirect,request redirect,dispatcher和redirect等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

1.request.getRequestDispatcher()是请求转发,前后页面共享一个request ;
response.sendRedirect()是重新定向,前后页面不是一个request。

2.RequestDispatcher.forward()是在服务器端运行;
HttpServletResponse.sendRedirect()是通过向客户浏览器发送命令来完成.
所以RequestDispatcher.forward()对于浏览器来说是“透明的”;
而HttpServletResponse.sendRedirect()则不是。

3.ServletContext.getRequestDispatcher(String url)中的url只能使用绝对路径; 而ServletRequest.getRequestDispatcher(String url)中的url可以使用相对路径。因为ServletRequest具有相对路径的概念;而ServletContext对象无次概念。

RequestDispatcher对象从客户端获取请求request,并把它们传递给服务器上的servlet,html或jsp。它有两个方法:

1.void forward(ServletRequest request,ServletResponse response)

用来传递request的,可以一个Servlet接收request请求,另一个Servlet用这个request请 求来产生response。request传递的请求,response是客户端返回的信息。forward要在response到达客户端之前调用,也 就是 before response body output has been flushed。如果不是的话,它会报出异常。

2.void include(ServletRequest request,ServletResponse response)

用来记录保留request和response,以后不能再修改response里表示状态的信息。

如果需要把请求转移到另外一个Web App中的某个地址,可以按下面的做法:
1. 获得另外一个Web App的ServletConext对象(currentServletContext.getContext(uripath)).

2. 调用ServletContext.getRequestDispatcher(String url)方法。

eg:ServletContext.getRequestDispatcher(“smserror.jsp”).forward(request,response);

代码实例:
index.jsp:

session.java:
     * Initialization of the servlet.

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • jsp跳转getRequestDispatcher()和sendRedirect()的区别

相关文章

  • 2017-05-11JSP经典学习笔记(包含各种入门常用语法)
  • 2017-05-11JSP中动态合并单元格的实例代码
  • 2017-05-11JSP自定义分页标签TAG全过程
  • 2017-05-11Struts html:checkbox框初始默认是选中的解决方法
  • 2017-05-11JSP指令元素(page指令/include指令/taglib指令)复习整理
  • 2017-05-11JSP一句话木马代码
  • 2017-05-11jsp连接MySQL实现插入insert操作功能示例
  • 2017-05-11基于jsp的井字游戏实例
  • 2017-05-11浅析Java中Data类的应用
  • 2017-05-11jsp编程常用技巧小结

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Js实现Base64编码与解码
    • JSP简单添加,查询功能代码
    • jsp源码实例3(获取jsp各种参数)
    • JSP一句话木马代码
    • 如何清理tomcat的缓存
    • 用连接池提高Servlet访问数据库的效率(1)
    • 用JSP实现的一个日历程序
    • JSP errorPage设置方法
    • Hibernate通用数据库操作代码
    • Spring 中 @Service 和 @Resource 注解的区别

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有