参考:http://blog.csdn.net/al_assad/article/details/76087465
Servlet 页面自动刷新
- 对于一些需要显示实时数据的网页,在不使用AJAX技术时,如果依靠后端渲染页面,需要在间隔一段时间后端自动渲染新页面后,再发送到客户端浏览器自动刷新页面(比如实时显示现场比赛成绩或股票市场状况或货币兑换率,需要定期刷新网页);
- Servlet 提供了一个机制,使得网页会在给定的时间间隔自动刷新;
- 刷新网页的最简单的方式是使用 HttpResponse 的方法 setIntHeader()。以下是这种方法的定义:
public void setIntHeader(String header, int headerValue)
使用这个方法来发送响应头的"Refresh"属性;
...
response.serIntHeader("Refresh",1); //设置每隔 1s 刷新一次页面
...
以下是一个简单的示例:
/* 动态显示时间,使用后端自动刷新 */
public class RefreshServlet extends HttpServlet{
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException{
//设置自动刷新时间间隔为 1s
response.setIntHeader("Refresh",1);
//处理逻辑和响应页面
String time = new SimpleDateFormat("hh:mm:ss").format(new Date());
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Up-to-data Time</title><head>");
out.println("<body><h1>"+time+"</h1></body></html>");
}
}