上代码 其实就是设置响应头
控制缓存的操作
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//设置缓存 时间是一天 一天内访问我都默认走缓存 刷新不算 刷新时重新请求 不走缓存
response.setDateHeader("expires", System.currentTimeMillis() + 24 * 3600 * 1000);
response.getWriter().write("expires");
System.out.println("过来了");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
告诉浏览器不要缓存
//告诉浏览器 不要缓存
response.setHeader("Expires", "-1");
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Pragma", "no-cache");
定时刷新的操作
/**
* 定时刷新
* @param response
* @throws IOException
*/
private int age=0;
private void test2(HttpServletResponse response) throws IOException {
//设置定时刷新的
//设置 response的编码格式
response.setCharacterEncoding("UTF-8");
//定时刷新的时间是4秒
response.setHeader("refresh", "4");
//告诉浏览器 打开文件的格式
response.setContentType("text/html;charset=utf-8");
response.getWriter().write(age+++"");
}
请求重定向
在实际开发中尽量不要用。因为它会增加请求的次数。加大服务端的压力。
/**
* 请求重定向
* @param response
* @throws IOException
*/
private void test3(HttpServletResponse response) throws IOException {
// 设置头
response.setHeader("location","/Demo2/Register.html");
//设置状态码
response.setStatus(302);
//上面的两句可以 用 来
response.sendRedirect("/Demo2/Register.html");
}