response对象

response为响应对象client要求。输出信息到客户。他封装JSP反应生成。发送client在回应client要求。

1.重定向网页

使用response对象的sendRedirect()方法能够将网页重定向到还有一个页面。重定向支持将地址重定向到不同的主机上,这一点与转发不同。

在client浏览器上将会得到跳转后的地址,并又一次发送请求链接;用户能够从浏览器的地址栏中看到跳转后的地址。重定向操作后,request中的属性将会所有失效,并開始一个新的request对象

sendRedirect()方法的语法格式例如以下:

response.sendRedirect(String path);

參数说明:

path:指定的目标地址,能够是相对路径,也能够是不同主机的其它URL地址

范例:

定义index.jsp重定向到Login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%response.sendRedirect("Login.jsp"); %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

<!--

<link rel="stylesheet" type="text/css" href="styles.css">

-->

</head>

<body>

This is my JSP page. <br>

</body>

</html>

定义Login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'Login.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

<!--

<link rel="stylesheet" type="text/css" href="styles.css">

-->

</head>

<body>

<form  name="form1" method="post" action="">

username:<input name="name" type="text" id="name" style="width:120px"><br/><br/>

密码:<input name="pass" type="password" id="pass" style="width:120px"><br/>

<br/>

<input type="submit" name="submit" value="提交">

</form>

</body>

</html>

2.处理HTTP头文件

response对象能够设置HTTP响应包头,当中最经常使用的是禁用缓存,设置页面自己主动刷新和定时跳转页面。

禁用缓存

默认情况下,浏览器将会显示的网页的内容进行缓存,能够通过response对象来实现对缓存的禁用。

范例:

改动Login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%

response.setHeader("Catch-control", "no-store");

response.setDateHeader("Expires", 0);

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'Login.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

<!--

<link rel="stylesheet" type="text/css" href="styles.css">

-->

</head>

<body>

<form  name="form1" method="post" action="">

username:<input name="name" type="text" id="name" style="width:120px"><br/><br/>

密码:<input name="pass" type="password" id="pass" style="width:120px"><br/>

<br/>

<input type="submit" name="submit" value="提交">

</form>

</body>

</html>

设置页面定时跳转

范例:

改动index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%

response.setHeader("refresh", "5;URL=hello.jsp");

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

<!--

<link rel="stylesheet" type="text/css" href="styles.css">

-->

</head>

<body>

This is my JSP page. <br>

</body>

</html>

设置页面定时刷新

<%

response.setHeader("refresh", "5");

%>

设置输出缓冲

通常情况下,server要输出到client的内容不会直接写到client。而是先写到一个输出缓冲区。

当满足以下三种情况之中的一个就会把缓冲区的内容写到client

A.JSP页面的输出已经所有写到了缓冲区

B.缓冲区已经满了

C.在JSP页面中调用了response对象的flushBuffer()方法或者是out对象的flush()方法

response对象对缓冲区的配置有例如以下几种方法:

flushBuffer():强制将缓冲区中的内容输出到client

getBufferSize():获取对应所使用的缓冲区的实际大小。假设没有缓冲区则返回0

reset():清除缓冲区的内容 。同一时候清除状态码和报头

isCommited():检測server端是否已经把数据写入client。

范例:

将缓冲区的大小设置为20KB

response.setBufferSize();

PS:假设将缓冲区的大小设置为0则表示不缓冲

JSP具体条款——response对象相关推荐

  1. java response.sendredirect_通过response对象的sendRedirect方法重定向网页

    通过response对象的sendRedirect方法重定向网页 制作人:全心全意 使用response对象提供的sendRedirect()方法可以将网页重定向到另一个页面.重定向操作支持将地址重定 ...

  2. JSP的概念||原理||JSP的脚本||JSP的内置对象||response.getWriter()和out.write()的区别||案例:改造Cookie案例

    1. 概念 * Java Server Pages: java服务器端页面         * 可以理解为:一个特殊的页面,其中既可以指定定义html标签,又可以定义java代码         * ...

  3. (二十):response 对象 (JSP学习第六天)

    response 对象 主要作用是对客户端的请求进行回应,将WEB服务器的处理结果发回客户端, response对象属于javax.servlet.http.HttpServletResponse接口 ...

  4. jsp内置对象(三)-----response对象

    response对象   response对象包含了响应客户端请求的有关信息,但在JSP中很少直接用到它.他是HttpServletResponse类的实例,response对象具有页面作用域,即访问 ...

  5. JSP中如何借助response对象实现页面跳转呢?

    转自: JSP中如何借助response对象实现页面跳转呢? 下文笔者将讲述使用response对象对页面跳转的几种方法分享,如下所示: 通过response.sendRedirect方法跳转 < ...

  6. response.getWriter()和jsp中的out对象的区别

    两者的主要区别: 1. 这两个对象的类型是完全不同的:内置对象out的类型是JspWriter:response.getWrite()返回的类型是PrintWriter 2. 获取方式不同:JspWr ...

  7. JSP数据交互:request、response对象

    JSP数据交互之request对象 JSP内置对象是 Web 容器创建的一组对象 一.request对象主要用于处理客户端请求 1.什么是request? request是Servlet.servic ...

  8. JSP:response对象

    response代表服务器对客户端的响应.大部分时候,程序无需使用response来响应客户端请求,因为有个更简单的响应对象--out,它代表页面输出流,直接使用out生成响应更简单. 但out是Js ...

  9. 响应输出HTML处理,JSP response对象:响应客户端的请求并向客户端输出信息

    response 对象和 request 对象相对应,用于响应客户请求,向客户端输出信息.response 是 HttpServletResponse 的实例,封装了 JSP 产生的响应客户端请求的有 ...

最新文章

  1. Python 中的用户自定义类型
  2. 搞定Go单元测试(三)—— 断言(testify)
  3. linux实战应用案例: 777 权限表示什么,各数字又是什么含义?
  4. JavaWeb 入门篇(3)ServletContext 详解 具体应用
  5. MyEclipse解决Launching xx on MyEclipse Tomcat has encountered a problem
  6. 外部 Storage Provider - 每天5分钟玩转 Docker 容器技术(149)
  7. html显示和隐藏不占空间的是什么,css怎么设置不占用空间的隐藏?
  8. HDU 4747 Mex【线段树上二分+扫描线】
  9. extmail html文件丢失,extmail/extman登录界面无法显示的故障解决
  10. 日历控件,可运行在XHTML1.0下
  11. hello bokeyuan
  12. R语言ETL工程系列:总论
  13. 小程序webview 页面被放大_Android中WebView加载的网页被放大的解决办法
  14. 什么是NoSQL及NoSQL四大分类
  15. MES系统之生产管理系统功能介绍(源码)
  16. 用java 把字符串写进文本,Java将字符串写入文本文件代码示例
  17. 企业微信邮箱可以移动办公吗?
  18. 4.1 c++左值和右值、类型转换
  19. 电脑蓝屏造成的数据丢失如何恢复
  20. 某程序员动了公司祖传代码屎山,半年没改完,惭愧后交辞职报告

热门文章

  1. python windows 消息通讯_python获取windows信息
  2. matlab理想低通滤波器代码_自己动手,解开Matlab下AMD锐龙处理器性能封印
  3. mysql plugin 调用_MySQL插件接口的调用方式
  4. windows系统下安装JDK8的教程图解
  5. 小程序下的兼容性问题
  6. 2018-2019-1 20189221 《深入理解计算机系统》第 1 周学习总结
  7. 在Docker中体验数据库之MySql
  8. 使用pygame制作一个简单的游戏
  9. 华为2288H V5串口重定向修改为iBMC
  10. 在SD/MMC卡上实现hive (Implement WinCE HIVEROM system on NAND or SD system )