request与response
2015-11-30 21:26
441 查看
1.Request(HttpRequestServlet)对象
request(HttpRequestServlet) 当前页面存在,服务器跳转存在,客户端不存在客户端的请求信息被封装在request对象中,通过它才可以了解到客户的需求,然后做出响应 ,它是HttpRequestServlet类的实例,request对象具有请求域,即完成客户端的请求之前,
该对象一直有效。常用方法如下:
String getRequestURl( )获取请求链接地址的相对路径
String getRequestURL( ).toString( ); 请求链接地址的完整路径
String getParameter(String name) 返回name指定参数的参数值
String[ ] getParameterValues(String name) 返回包含参数name的所有值的数组
void setAttribute( String ,Object) 存储此请求中的属性
Object getAttribute(String name) 返回指定属性的属性值
int getContentLength( )获取浏览器文本的大小
String getContentType( )得到请求体的mime类型
String getProtocol( )返回请求用的协议类型和版本号
String getSererName( ) 返回接受请求的服务器主机名
Sting getRemoteAddr( )返回客户端IP地址
String getRealPath 得到真实路径
eg: 请求体的mime类型:
<%=request.getContentType()
%><
br>
协议类型及版本号:
<%=request.getProtocol()
%>
<br
>
服务器主机名:
<%=request.getParameterNames()
%><
br>
服务器端口号:
<%=request.getServerPort()
%>
<br
>
请求客户端的Ip地址:
<%=request.getRemoteAddr()
%>
<br
>
eg.<body>
requests.jsp
<h1
>用户注册
</h1
><hr
>
<form
action
="request.jsp"
name="regForm"
method=
"POST">
<table
>
<tr
>
<td
>用户名:
</td
>
<td
><input
type
="text"
name="username"></
td>
</tr
>
<tr
><td
>爱好:
</td
><td
>
<inputtype="checkbox"name="favorite"value="read">读书
//checkbox:复选框
<input
type
="checkbox"
name="favorite"
value=
"music">音乐
<input
type
="checkbox"
name="favorite"
value=
"moive">电影
<input
type
="checkbox"name="favorite"value="internet">上网
</td
>
</tr>
<tr
>
<td
colspan
="2"><input
type=
"submit"
value
="提交"></
td> </tr
>
</table
>
</form
>
</body>
request.jsp
[align=left]<body>[/align]
<h1>
request内置对象</h1
>
<%request.setCharacterEncoding(
"UTF-8");
%> //解决中文乱码问题
用户名:<%=request.getParameter(
"username")
%><
br>
[align=left]爱好:<%[/align]
String[] favorites=request.getParameterValues(
"favorite");
for(
int
i=0;i<favorites.length;i++){
out.println(favorites[i]+
" "); // 空格
[align=left] }[/align]
%>
[align=left]</body>[/align]
解决URL传参中中文乱码问题,在tomcat服务器中conf目录下server.xml文件中找到添加
URIEncoding="utf-8"
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout=“20000"
redirectPort="8443" URIEncoding="utf-8”/>
2.Response对象
response对象包含了响应客户请求的有关信息,但在jsp中很少直接用到它,它是HttpServletResponse类的实例,response对象具有页面作用域,即访问一个页面时,该页面内的response对象只能对这次访问有效,其它页面的response对象对当前页面无效
常用方法:
一.PrintWriter getWriter( )返回可以客户端输出字符的一个对象 Java.io,*
二.setContentType(String type)设置响应的mime类型
out.println("response内置对象");
PrintWriter outer=response.getWriter( ); //获得输出流对象
outer.println("大家好"); //会提前在内置的out对象前打印
response.sendRedirect( "reg.jsp");
//请求重定向 (无法共享转发的页中数据)
redirect能重定向到当前应用程序,而且还能重定向到同一个站点上其他应用程序的资源,甚至使用绝对的url重定向到其他站点资源.比如可以通过该方法跳转到Google页面
<jsp:forword page=""></jsp:forword>//JSP动作指令 forward属于服务器端请求资源,服务器直接访问目标地址,并对目标地址响应内容进行读取,在把读取内容发给浏览器,客户端浏览器的地址不变.
请求重定向: 客户端行为,
response.sendRedirect( )从本质上讲等同于2次请求,前一次的请求对象不会保存,地址栏的URL地址会改变
http://www.cnblogs.com/shenliang123/archive/2011/10/27/2226892.html
重定向:你先去了A局,A局的人说:“这事不归我们管,去B局”,然后,你就从A局退出来自己乘车去了B局。(进行页面跳转)
请求转发:服务器行为 request.getRequestDispatcher( ).forward(request,response);是一次请求转发后请求对象会保存,地址栏的URL地址不会改变。
转发;你先去了A局,A局的人看了以后,知道这个事情其实应该B局来管,但他没有把你退出来,而
是让你坐一会,自己到后面办公室联系了B的人,他他们办好后,送了过来。
99%业务都是用转发
重定向 登陆页面跳出比如 : 登陆退出——重定向到首页
ajax—— 无状态刷新
request(HttpRequestServlet) 当前页面存在,服务器跳转存在,客户端不存在客户端的请求信息被封装在request对象中,通过它才可以了解到客户的需求,然后做出响应 ,它是HttpRequestServlet类的实例,request对象具有请求域,即完成客户端的请求之前,
该对象一直有效。常用方法如下:
String getRequestURl( )获取请求链接地址的相对路径
String getRequestURL( ).toString( ); 请求链接地址的完整路径
String getParameter(String name) 返回name指定参数的参数值
String[ ] getParameterValues(String name) 返回包含参数name的所有值的数组
void setAttribute( String ,Object) 存储此请求中的属性
Object getAttribute(String name) 返回指定属性的属性值
int getContentLength( )获取浏览器文本的大小
String getContentType( )得到请求体的mime类型
String getProtocol( )返回请求用的协议类型和版本号
String getSererName( ) 返回接受请求的服务器主机名
Sting getRemoteAddr( )返回客户端IP地址
String getRealPath 得到真实路径
eg: 请求体的mime类型:
<%=request.getContentType()
%><
br>
协议类型及版本号:
<%=request.getProtocol()
%>
<br
>
服务器主机名:
<%=request.getParameterNames()
%><
br>
服务器端口号:
<%=request.getServerPort()
%>
<br
>
请求客户端的Ip地址:
<%=request.getRemoteAddr()
%>
<br
>
eg.<body>
requests.jsp
<h1
>用户注册
</h1
><hr
>
<form
action
="request.jsp"
name="regForm"
method=
"POST">
<table
>
<tr
>
<td
>用户名:
</td
>
<td
><input
type
="text"
name="username"></
td>
</tr
>
<tr
><td
>爱好:
</td
><td
>
<inputtype="checkbox"name="favorite"value="read">读书
//checkbox:复选框
<input
type
="checkbox"
name="favorite"
value=
"music">音乐
<input
type
="checkbox"
name="favorite"
value=
"moive">电影
<input
type
="checkbox"name="favorite"value="internet">上网
</td
>
</tr>
<tr
>
<td
colspan
="2"><input
type=
"submit"
value
="提交"></
td> </tr
>
</table
>
</form
>
</body>
request.jsp
[align=left]<body>[/align]
<h1>
request内置对象</h1
>
<%request.setCharacterEncoding(
"UTF-8");
%> //解决中文乱码问题
用户名:<%=request.getParameter(
"username")
%><
br>
[align=left]爱好:<%[/align]
String[] favorites=request.getParameterValues(
"favorite");
for(
int
i=0;i<favorites.length;i++){
out.println(favorites[i]+
" "); // 空格
[align=left] }[/align]
%>
[align=left]</body>[/align]
解决URL传参中中文乱码问题,在tomcat服务器中conf目录下server.xml文件中找到添加
URIEncoding="utf-8"
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout=“20000"
redirectPort="8443" URIEncoding="utf-8”/>
2.Response对象
response对象包含了响应客户请求的有关信息,但在jsp中很少直接用到它,它是HttpServletResponse类的实例,response对象具有页面作用域,即访问一个页面时,该页面内的response对象只能对这次访问有效,其它页面的response对象对当前页面无效
常用方法:
一.PrintWriter getWriter( )返回可以客户端输出字符的一个对象 Java.io,*
二.setContentType(String type)设置响应的mime类型
out.println("response内置对象");
PrintWriter outer=response.getWriter( ); //获得输出流对象
outer.println("大家好"); //会提前在内置的out对象前打印
response.sendRedirect( "reg.jsp");
//请求重定向 (无法共享转发的页中数据)
redirect能重定向到当前应用程序,而且还能重定向到同一个站点上其他应用程序的资源,甚至使用绝对的url重定向到其他站点资源.比如可以通过该方法跳转到Google页面
<jsp:forword page=""></jsp:forword>//JSP动作指令 forward属于服务器端请求资源,服务器直接访问目标地址,并对目标地址响应内容进行读取,在把读取内容发给浏览器,客户端浏览器的地址不变.
请求重定向: 客户端行为,
response.sendRedirect( )从本质上讲等同于2次请求,前一次的请求对象不会保存,地址栏的URL地址会改变
http://www.cnblogs.com/shenliang123/archive/2011/10/27/2226892.html
重定向:你先去了A局,A局的人说:“这事不归我们管,去B局”,然后,你就从A局退出来自己乘车去了B局。(进行页面跳转)
请求转发:服务器行为 request.getRequestDispatcher( ).forward(request,response);是一次请求转发后请求对象会保存,地址栏的URL地址不会改变。
转发;你先去了A局,A局的人看了以后,知道这个事情其实应该B局来管,但他没有把你退出来,而
是让你坐一会,自己到后面办公室联系了B的人,他他们办好后,送了过来。
99%业务都是用转发
重定向 登陆页面跳出比如 : 登陆退出——重定向到首页
ajax—— 无状态刷新
相关文章推荐
- easy-ui 小白进阶史(二):操作数据,easy-ui操作
- ui 霓虹灯
- StringBuffer和StringBuilder
- IOS开发之UIview
- UIButton 的一些属性
- 奇怪的现象:touchesBegan: 与UITapGestureRecognizer手势没有人响应 以及set方法的妙用
- 在Visual Studio中使用VueJS时,不可以用 v-bind 的简写 : 及 v-on的简写 @
- UI第十四天:UI⾼级可视化设计
- c#子线程操作ui
- 让IE8支持@media query
- UITableView
- 《算法竞赛入门经典2ndEdition 》例题3-6 环状序列(Circular Sequence, Uva1584)
- C# 使用msbuild编译程序
- scala剖析PriorityQueue,权值的使用
- 安装UIIamge拾取图片插件
- 【Win10开发】绘制静态UI
- UI-1-UI入门
- MyEclips启动报错:'Building workspace' has encountered a problem的解决方法
- UI基础-UI高级 可视化设计
- layout_centerVertical="true"用法