- 浏览: 590555 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
zhanghao1785:
jQuery jqGrid中ColModel的参数大全 -
haiyangyiba:
在实际应用中,回车提交一般需要注意的是,多次回车之间的间隔,换 ...
回车自动提交 -
fengkuangxiao6:
快捷键能写的这么详细,太棒了!
Eclipse中10个最有用的快捷键组合 -
Frank_Sun:
我的jdk版本是1.6.0.29,在finally中加retu ...
try catch finally与return的执行顺序 -
jueyue:
这个注解可以搞吗,感觉还不如放在前台
struts2校验(二):声明式验证(基于xml配置验证)(1)
Request对象:为脚本提供了当客户端请求一个页面或者传递一个窗体时,客户端提供的全部信息。这包括能指明浏览器和用户的HTTP变量,在这个域名下存放在浏览器中的cookie,任何作为查询字符串而附于URL后面的字符串或页面的<FORM>段中的HTML控件的值。也提供使用Secure Socket Layer(SSL)或其他加密通信协议的授权访问,及有助于对连接进行管理的属性。
Response对象:用来访问服务器端所创建的并发回到客户端的响应信息。为脚本提供HTTP变量,指明服务器和服务器的功能和关于发回浏览器的内容的信息,以及任何将为这个域而存放在浏览器里新的cookie。它也提供了一系列的方法用来创建输出,例如无处不在的Response.Write方法。
cookie: Cookies是当你浏览某网站时,由Web服务器置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、密码、浏览过的网页、停留的时间等信息。 当你再次来到该网站时,网站通过读取Cookies,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。
讲的通俗一点就是:
Request(中文“请求”的意思):可以理解为客户端向服务器请求的信息,就是客户端向服务器请求时,把自己的浏览器信息、HTTP变量和保存在客户端的Cookie告诉服务器,这样服务器就可以根据这些信息判断是谁请求的,之前有没有请求过,对应客户端的Session是什么等等。
Response(中文“反应、响应”的意思):可以理解为服务器对客户端请求的响应,就是服务器接收到客户端的请求后,成生页面信息、Cookie(发到客户端后就保存在客户端)等发送到客户端。
Cookie(中文“饼干”,在这里不能这样理解了):就是保存在客户端上的一些信息,可以用来验证用户信息,提高用户响应速度等等。为何不把它理解为:我把饼干放在家里,我想吃的时候就拿出来吃。呵呵!
==============================================================
response.sendRedirect()和request.getRequestDispatcher().forward(request,response)的区别
跳转方式
=============================================================
运用forward方法只能重定向到同一个Web应用程序中的一个资源。而sendRedirect方法可以让你重定向到任何URL。
表单form的action="/uu";sendRedirect("/uu");表示相对于服务器根路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/uu);
Forward代码中的"/uu"则代表相对与WEB应用的路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/Test/uu);
(运用RequestDispatcher接口的Forward)方法
forward()无法重定向至有frame的jsp文件,可以重定向至有frame的html文件,
同时forward()无法在后面带参数传递,比如servlet?name=frank,这样不行,可以程序内通过response.setAttribute("name",name)来传至下一个页面.
重定向后浏览器地址栏URL不变.
只有在客户端没有输出时才可以调用forward方法。如果当前页面的缓冲区(buffer)不是空的,那么你在调用forward方法前必须先清空缓冲区。
"/"代表相对与web应用路径
RequestDispatcher rd = request.getRequestDispatcher("/ooo");
rd.forward(request, response);提交至http://localhost:8080/Test/ooo
RequestDispatcher rd = getServletContext().getRequestDispatcher("/ooo");
rd.forward(request, response);提交至http://localhost:8080/Test/ooo
RequestDispatcher rd =getServletContext().getNamedDispatcher("TestServlet");(TestServlet为一个<servlet-name>)
rd.forward(request, response);提交至名为TestServlet的servlet
如果在<jsp:forward>之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意。
另外要注意:它不能改变浏览器地址,刷新的话会导致重复提交
从http://localhost:8080/Test/gw/page.jsp中转发
<jsp:forward page="OtherPage.jsp"/>在JSP页面被解析后转换成pageContext.forward("OtherPage.jsp");
"/OtherPage.jsp"提交到http://localhost:8080/Test/OtherPage.jsp
"OtherPage.jsp"提交到http://localhost:8080/Test/gw/OtherPage.jsp
(运用HttpServletResponse接口的sendRedirect)方法302
是在用户的浏览器端工作,sendRedirect()可以带参数传递,比如servlet?name=frank传至下个页面,
同时它可以重定向至不同的主机上,sendRedirect()可以重定向有frame.的jsp文件.
假设转发代码包含于注册的servlet-url为/ggg/tt;jsp为/ggg/tt.jsp:
绝对路径:response.sendRedirect("http://www.brainysoftware.com")发送至http://www.brainysoftware.com
根路径:response.sendRedirect("/ooo")发送至http://localhost:8080/ooo
相对路径:response.sendRedirect("ooo")发送至http://localhost:8080/Test/ggg/ooo,
sendRedirect等同于此方式
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
String newLocn = "/newpath/jsa.jsp";
response.setHeader("Location",newLocn);
(Meta Refresh)方法200
这种方法是由HTML提供的,Meta本身就是HTML标签。使用方法是:<meta http-equiv="refresh" content="5; url=http://www.dreamdu.com/" />
相应的java代码
String content=stayTime+";URL="+URL;
response.setHeader("REFRESH",content);
--------------------------------------------------------------------------------------------------------------------------
使用response.sendRedirect()地址栏将改变
使用request.getRequestDispatcher().forward(request,response)地址栏中的信息保持不变.
--------------------------------------------------------------------------------------------------------------------------
request.setAttribute存的东西
只用通过方法2跳转 才能在新页取出来
--------------------------------------------------------------------------------------------------------------------------
redirect 会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.
forward 发生在服务器内部, 在浏览器完全不知情的情况下发给了浏览器另外一个页面的response. 这时页面收到的request不是从浏览器直接发来了,可能己经放了数据.
所以:
request.setAttribute存的东西
只用通过方法2跳转 才能在新页取出来
Response对象:用来访问服务器端所创建的并发回到客户端的响应信息。为脚本提供HTTP变量,指明服务器和服务器的功能和关于发回浏览器的内容的信息,以及任何将为这个域而存放在浏览器里新的cookie。它也提供了一系列的方法用来创建输出,例如无处不在的Response.Write方法。
cookie: Cookies是当你浏览某网站时,由Web服务器置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、密码、浏览过的网页、停留的时间等信息。 当你再次来到该网站时,网站通过读取Cookies,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。
讲的通俗一点就是:
Request(中文“请求”的意思):可以理解为客户端向服务器请求的信息,就是客户端向服务器请求时,把自己的浏览器信息、HTTP变量和保存在客户端的Cookie告诉服务器,这样服务器就可以根据这些信息判断是谁请求的,之前有没有请求过,对应客户端的Session是什么等等。
Response(中文“反应、响应”的意思):可以理解为服务器对客户端请求的响应,就是服务器接收到客户端的请求后,成生页面信息、Cookie(发到客户端后就保存在客户端)等发送到客户端。
Cookie(中文“饼干”,在这里不能这样理解了):就是保存在客户端上的一些信息,可以用来验证用户信息,提高用户响应速度等等。为何不把它理解为:我把饼干放在家里,我想吃的时候就拿出来吃。呵呵!
==============================================================
response.sendRedirect()和request.getRequestDispatcher().forward(request,response)的区别
跳转方式
=============================================================
运用forward方法只能重定向到同一个Web应用程序中的一个资源。而sendRedirect方法可以让你重定向到任何URL。
表单form的action="/uu";sendRedirect("/uu");表示相对于服务器根路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/uu);
Forward代码中的"/uu"则代表相对与WEB应用的路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/Test/uu);
(运用RequestDispatcher接口的Forward)方法
forward()无法重定向至有frame的jsp文件,可以重定向至有frame的html文件,
同时forward()无法在后面带参数传递,比如servlet?name=frank,这样不行,可以程序内通过response.setAttribute("name",name)来传至下一个页面.
重定向后浏览器地址栏URL不变.
只有在客户端没有输出时才可以调用forward方法。如果当前页面的缓冲区(buffer)不是空的,那么你在调用forward方法前必须先清空缓冲区。
"/"代表相对与web应用路径
RequestDispatcher rd = request.getRequestDispatcher("/ooo");
rd.forward(request, response);提交至http://localhost:8080/Test/ooo
RequestDispatcher rd = getServletContext().getRequestDispatcher("/ooo");
rd.forward(request, response);提交至http://localhost:8080/Test/ooo
RequestDispatcher rd =getServletContext().getNamedDispatcher("TestServlet");(TestServlet为一个<servlet-name>)
rd.forward(request, response);提交至名为TestServlet的servlet
如果在<jsp:forward>之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意。
另外要注意:它不能改变浏览器地址,刷新的话会导致重复提交
从http://localhost:8080/Test/gw/page.jsp中转发
<jsp:forward page="OtherPage.jsp"/>在JSP页面被解析后转换成pageContext.forward("OtherPage.jsp");
"/OtherPage.jsp"提交到http://localhost:8080/Test/OtherPage.jsp
"OtherPage.jsp"提交到http://localhost:8080/Test/gw/OtherPage.jsp
(运用HttpServletResponse接口的sendRedirect)方法302
是在用户的浏览器端工作,sendRedirect()可以带参数传递,比如servlet?name=frank传至下个页面,
同时它可以重定向至不同的主机上,sendRedirect()可以重定向有frame.的jsp文件.
假设转发代码包含于注册的servlet-url为/ggg/tt;jsp为/ggg/tt.jsp:
绝对路径:response.sendRedirect("http://www.brainysoftware.com")发送至http://www.brainysoftware.com
根路径:response.sendRedirect("/ooo")发送至http://localhost:8080/ooo
相对路径:response.sendRedirect("ooo")发送至http://localhost:8080/Test/ggg/ooo,
sendRedirect等同于此方式
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
String newLocn = "/newpath/jsa.jsp";
response.setHeader("Location",newLocn);
(Meta Refresh)方法200
这种方法是由HTML提供的,Meta本身就是HTML标签。使用方法是:<meta http-equiv="refresh" content="5; url=http://www.dreamdu.com/" />
相应的java代码
String content=stayTime+";URL="+URL;
response.setHeader("REFRESH",content);
--------------------------------------------------------------------------------------------------------------------------
使用response.sendRedirect()地址栏将改变
使用request.getRequestDispatcher().forward(request,response)地址栏中的信息保持不变.
--------------------------------------------------------------------------------------------------------------------------
request.setAttribute存的东西
只用通过方法2跳转 才能在新页取出来
--------------------------------------------------------------------------------------------------------------------------
redirect 会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.
forward 发生在服务器内部, 在浏览器完全不知情的情况下发给了浏览器另外一个页面的response. 这时页面收到的request不是从浏览器直接发来了,可能己经放了数据.
所以:
request.setAttribute存的东西
只用通过方法2跳转 才能在新页取出来
发表评论
-
回车自动提交
2014-06-10 16:08 1235方法一:此页面的所有输入框回车自动提交 //添加回车确定查 ... -
点击查询按钮后,展示数据加载进度,防止用户多次提交
2014-02-17 16:30 1604需要引入 jquery.blockUI.js $.block ... -
( 转载尚不知道是否可行)Html限制文件上传格式
2014-02-14 17:23 942经常在网页的上传文件时要进行文件格式的限制,一方面是业务的原因 ... -
js 的 typeof 的用法
2014-02-14 10:56 822typeof 可以用来检测给定变量的数据类型,可能的返回值: ... -
js 的 typeof 的用法
2014-02-14 10:56 1typeof 可以用来检测给定变量的数据类型,可能的返回值: ... -
js 的 typeof 的用法
2014-02-14 10:56 1typeof 可以用来检测给定变量的数据类型,可能的返回值: ... -
css:文字溢出的部分隐藏并用省略号代替
2013-12-10 10:12 1090<style type="text/css&q ... -
表数据滚动时候,实现表头固定
2013-12-10 09:51 1488实现表头固定的样式:<tr style=" ... -
限制文本框的内容不允许copy
2013-12-10 09:40 1170<script> $(" ... -
简单按钮 radio checkbox使用
2013-10-11 18:57 1015checkbox aa.jsp <in ... -
http工作原理和特点
2013-02-28 14:57 1093一.http的基本原理: HT ... -
JS里获取当前的年份以及该年的前两年的年份 并以下拉框形式将3个年份展现在JSP页面上
2013-02-25 11:37 7707<script> <div > ... -
设置form表单input 属性不提交
2013-02-01 00:39 0<div class="grid_4" ... -
$(document).ready()和window.onload的区别
2012-12-26 11:17 1347Jquery中$(document).ready()的作用类似 ... -
URL转码escape() encodeURI() encodeURIComponent()
2012-12-24 14:21 2462js对文字进行编码涉及3个函数:escape,encodeUR ... -
jQuery学习笔记--JqGrid相关操作 方法列表
2012-12-11 11:08 6434JqGrid相关操作备忘 方法列表 特别推荐:怎样获取某一方 ... -
jqgrid--frozen Columns
2012-11-20 17:47 8125jqgrid在4.1.2以前的版本里不支持frozenColu ... -
struts2的s:iterator详解
2012-10-08 15:41 1312详解 struts2的s:iterator 可以遍历 数据栈里 ... -
把get请求改为post请求
2012-09-11 11:31 2625function searchRentalHouseInfo( ... -
CSS颜色代码
2012-07-09 14:15 3CSS颜色代码常用的颜色 ...
相关推荐
通过上述分析可以看出,`Request`与`Response`在Web开发中起着桥梁的作用,它们不仅能够帮助开发者更好地理解客户端的需求,还能够灵活地控制服务器端如何响应这些需求。掌握这两个对象的基本用法对于从事Web开发的...
ASP.NET 中 Request 与 Response 的常用属性方法 在 ASP.NET 中,Request 和 Response 是两个非常重要的对象,它们分别代表了客户端的请求信息和服务器的响应信息。了解 Request 和 Response 的常用属性方法是 ASP...
通过地址解析一张图说明浏览器和Tomcat服务器之间的通信关系。相关技术点有servlet、request、response、(XML小配置)等等。
### Request与Response概述 在Web开发中,Request对象代表了客户端向服务器发送的请求,它封装了所有请求的细节,如HTTP方法(GET、POST等)、请求参数、请求头等。而Response对象则代表了服务器对客户端请求的响应...
Request与Response
在Web开发中,请求(request)和响应(response)是HTTP协议的核心概念,它们是客户端与服务器交互的基础。在处理用户操作时,我们常常需要对页面进行跳转或重定向,这通常通过`request`和`response`对象来实现。这两者...
### Struts2中request与response的使用方法 #### 一、引言 Struts2作为Struts1的后续版本,在架构设计与实现机制上进行了大量的改进。相较于Struts1,Struts2对request、response、session等核心对象的处理方式有所...
ASP中的Request和Response...总的来说,Request和Response对象是ASP编程中的基础组件,它们帮助开发者处理客户端与服务器之间的数据交互,从而实现动态网站的功能。了解和熟练使用这两个对象是ASP开发的关键技能之一。
在c#Asp.Net简单告诉你request和response的用法;
在"09_Java Web——Request&Response案例"这个主题中,我们聚焦于HTTP请求和响应这两个核心概念,它们是Web应用中客户端与服务器交互的基础。下面将详细阐述相关知识点。 1. **HTTP协议**:超文本传输协议(HTTP)...
与`Request`相对,`Response`对象负责向客户端发送数据。这包括HTML页面、文本、图像、JSON数据或任何其他可以被客户端解析的内容。`Response`还提供了控制HTTP响应状态码、重定向、设置cookies等功能。 ##### 常用...
在ASP中,熟练掌握`Request`和`Response`对象的使用至关重要,因为它们构成了服务器端与客户端交互的基础。理解它们的各个属性和方法,能够帮助开发者构建动态、交互性强的Web应用程序。在实际开发中,根据需求灵活...
在Web开发中,`Request`与`Response`对象是非常核心且基础的概念。它们是客户端与服务器端交互的重要桥梁,用于处理HTTP请求与响应。本文将深入剖析这两个对象的功能及使用方法。 #### 二、Request对象详解 `...
【ASP中的Request Response语句语法解析】 在ASP(Active Server Pages)编程中,Request和Response对象是基础且至关重要的组成...在ASP编程中,掌握Request和Response对象的使用是实现服务器与客户端有效交互的关键。
在这个笔记中,我们将详细介绍 Request 和 Response 的概念、作用、使用方法以及相关的知识点。 Request 概念 在 Web 开发中,Request 指的是客户端向服务器发送的请求信息,包括 URL、参数、 Header 等信息。...
本实例主要探讨Servlet中的两个关键对象:HttpServletRequest(Request)和HttpServletResponse(Response),它们是Servlet API的核心组成部分,用于处理HTTP请求和构建响应。 Request对象是用于获取客户端发送的...
在IT行业中,网络通信是核心部分之一,而`request`和`response`是HTTP协议中的两个基本概念,它们构成了客户端(如浏览器)与服务器端之间交互数据的核心机制。本篇文章将深入探讨这两个概念以及它们在实际开发中的...
在Web服务器与浏览器之间进行通信时,`request`(请求)是客户端(通常是浏览器)向服务器发送的一种消息。它包含了用户想要获取资源的详细信息,如HTTP方法(GET、POST、PUT等)、URL、HTTP版本、请求头和请求体。...
什么是JSP的内置对象 JSP的内置对象有哪些? request对象 与 response对象 session对象 application对象 out对象