response一些小细节

来源:互联网 发布:ubuntu修改ip地址 编辑:程序博客网 时间:2024/05/22 12:49

通过观看房老师的教学视频,自己做了一些笔记。

1、response 向客户机输出数据。

2、字节流(outputStream)可以输出任何的数据,而字符流(writer)只能写字符数据

3、respone.setHeader("Content-type","text/html;charset=UTF-8");   //控制浏览器,指定编码是UTF-8

上面语句等同于:response.setCharacterEncoding("UTF-8");  //控制response以什么样的编码形式在浏览器端输出

4、在servlet里面取资源的时候用servletContext来操作,如果是其它的程序来操作servlet中是资源时通过类加载器来操作

5、如果下载文件时中文文件,则文件名需要经过URL编码,URLEncoder.encode(fiename,"UTF-8");

6、刷新按钮:①不管浏览器中有没有缓存,都向服务器请求

                       ②刷新按钮将上次请求再操作一次

7、控制浏览器定时刷新:response.setHeader("refresh","3;url="路径"");//3秒钟后跳转

8、设置缓存:response.setDateHeader("expires",system.CurrentTimeMillis()+1000*3600);//缓存有效时间一个小时

9、请求重定向:①response.setStatus(302);//告诉请求方自己所处的状态  response.setHeader("location","路径");

                   或者②response.sendRedirect("路径");

用到请求重定向的情况:刚刚登陆页面的时候或购物车功能模块

重定向的特点;

                  ①浏览器会向服务器发送两次请求,意味着两次request/response

                  ②用重定向技术,浏览器地址会发生变化

                  ③用户登陆和显示购物车时通常会用到重定向技术

10、response.getOutpuStream();和response.getWriter();不能够同时使用在一次servlet请求中。