Serlvet/JSP中forward、include、sendRedirect的区别
来源:互联网 发布:pdg转pdf mac 编辑:程序博客网 时间:2024/06/02 04:14
sendRedirect和forward、include最大的区别:
sendRedirect是在客户端重新发送一个新的请求。而forward、include则是同一个请求在服务器端的跳转,客户端完全不知道。
forward和include的区别
forward方法在服务器端将请求从一个servlet发送到另一个资源(servlet,JSP file,or HTML file)。该方法允许一个servlet
对请求做一些预处理而另一个资源来产生response调用forward()方法时必须注意下列两点:
1、在响应被送回到客户端之前才能调用forward()方法(指的是在响应主体输出清空(flush)之前),否则将拋
出IllegalStateException异常。[include没有这种情况]
2、调用forward()方法后, response缓冲区中尚未完成的输出将被自动清空(也就是在forward方法前,
使用PrintWriter,ServletOutputStream输出的内容都被忽略) [include不会]
forward方法在JSP和Servlet中的表现不一致
在Servlet中调用forward方法后,该方法下面的java代码将继续执行。之后再去执行forward方法。而在JSP中
遇到jsp:forward动作指令将会跳转到指定的资源,而后面的代码无法执行。
forward是把请求内容转发都另一个Servlet/JSP,include是把另一个servlet/jsp处理过后的内容拿过来与此时
servlet的内容一同输出,既是把另一Servlet的响应内容与此时Servlet的响应内容和在一个文件中输出。
forward在调用者程序中设置的响应状态码和响应头不会被忽略,在被调用者程序中设置的响应状态码和响
应头也不会被忽略。include会被忽略
总结下:
sendRedirect与include,forward的区别在于是不是同一个request
include与forward的区别在于输出内容,以及响应头!
- Serlvet/JSP中forward、include、sendRedirect的区别
- jsp/servlet 中sendRedirect,include,forward区别
- Servlet中forward、sendRedirect、include的区别
- JSP中动态INCLUDE与静态INCLUDE,forward与sendredirect的区别
- sendRedirect,include,forward的区别
- sendRedirect、forward、include的区别
- jsp中forward和sendRedirect的区别
- jsp中forward与sendRedirect的区别
- JSP中forward和sendRedirect的区别
- jsp中forward与sendRedirect的区别
- jsp,Servlet中的forward、include、sendRedirect的区别
- sendredirect,forward,include区别
- Cookie 和session的区别,<%@include和jsp:include的区别,forward和sendredirect的区别
- 图解sendRedirect,include,forward的区别
- 图解sendRedirect,include,forward的区别
- 转:图解sendRedirect,include,forward的区别
- include与forward与sendRedirect的区别
- 图解sendRedirect,include,forward的区别
- python科学计算六:scipy矩阵操作
- avstream mini driver的inf示例(pci)
- Java Web Web应用,打包和web.xml文件
- js 如何验证上传文件的类型?
- android实用代码片段
- Serlvet/JSP中forward、include、sendRedirect的区别
- avstream mini driver的inf示例(usb)
- 物联网,你的信息安全吗?——第1期中国物联网信息安全主题沙龙在京顺利召开。
- HttpUtils--Get
- 使用MyEclipse中调用javadoc的问题
- Spring发送邮件的简单例子
- 求数值(乘法)
- LEADTOOLS使用教程:创建OCR引擎实例
- iOS多语言环境支持设计