Servlet第四课 响应头信息

来源:互联网 发布:java数据结构视频教程 编辑:程序博客网 时间:2024/06/07 06:48

了解基本的响应头信息的使用。


01.常见MIME类型

02.常见HTTP 1.1响应报头


– Cache-Control (1.1) 和Pragma (1.0)
no-cache值阻止浏览器缓存页面。
– Content-Disposition
通过这个报头,可以请求浏览器询问用户将响应存储到磁盘上给定名称的文件中 Content-Disposition: attachment; filename=file-name
– Content-Encoding
文档的编码方式
– Content-Length
响应中的字节数
– Content-Type
返回文档时所采用的MIME类型。
使用setContentType设置这个报头。
– Expires
特定的一段时间,这段时间后应该将文档认作是过期,不应该再继续缓存
使用setDateHeader设置这个报头
– Last-Modified
文档最后被改动的时间
不要直接设置这个报头,而应该提供getLastModified方法
–Location
浏览器应该重新连接到的URL
不要直接设置这个报头,而要使用sendRedirect进行设定
–Refresh
多少秒后浏览器应该重新载入页面
–Set-Cookie
浏览器应该记下来的cookie。不要直接设置这个报头,而应该使用addCookie
–WWW-Authenticate
授权的类型和范围需要在Authorization报头中给出


03.构建Excel电子表格


protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {response.setContentType("application/vnd.ms-excel");PrintWriter out = response.getWriter();out.println("\tQ1\tQ2\tQ3\tQ4\tTotal");out.println("Apples\t78\t87\t92\t29\t=SUM(B2:E2)");out.println("Oranges\t77\t86\t93\t30\t=SUM(B3:E3)");}

04.动态生成JPEG图像

response.setContentType("image/jpeg");             InputStream in = this.getClass().getClassLoader().getResourceAsStream("girl.jpg");            int len = in.available();             byte[] buffer = new byte[len];             in.read(buffer);             //输出流             OutputStream out = response.getOutputStream();             out.write(buffer);


05.定时刷新页面

 response.setHeader("refresh", "1");             response.setContentType("text/html;charset=gbk");             PrintWriter out = response.getWriter();             out                             .println("<!DOCTYPE HTML>");             out.println("<HTML>");             out.println("    <HEAD><TITLE>A Servlet</TITLE></HEAD>");             out.println("    <BODY>");             out.print("        当前页面刷新时间为: ");             out.print(new Date().toLocaleString());             out.println("    </BODY>");             out.println("</HTML>");             out.flush();             out.close();


0 0