代码改变世界

让浏览器定时刷新网页或跳转至其他页面

2006-06-22 10:02  java ee spring  阅读(652)  评论(0编辑  收藏  举报

HTTP协议中定义了一个Refresh头字段,用于告诉浏览器过多少秒后自动刷新页面。在Refresh头字段的时间设置值后面还可以用分号(;)分隔后,再指定一个URL地址,这将让浏览器在指定的时间值后自动去访问URL地址指向的资源。

:动手体验:Refresh头字段的作用效果

1)按例程5-2编写一个设置Refresh头字段的Servlet

例程5-2  RefreshServlet.java

 


import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

 

public class RefreshServlet extends HttpServlet

{

       public void service(HttpServletRequest request,

              HttpServletResponse response) throws ServletException, IOException

    {

           //分别注释下面两条语句中的一条,查看各自的运行效果

              response.setHeader("Refresh","2");

              //response.setHeader("Refresh","2;URL=http://www.it315.org");

             

              response.getWriter().println(new java.util.Date());

    }

}

 


使用compile.bat编译RefreshServlet.java源文件,确保编译后生成的class文件存放在了<tomcat的安装目录>/webapps/it315/WEB-INF/classes目录中。

2)修改<tomcat的安装目录>/webapps/it315/WEB-INF/web.xml文件,在其中的相应位置处增加如下两段内容:

    <servlet>

        <servlet-name>RefreshServlet</servlet-name>

        <servlet-class>RefreshServlet</servlet-class>

    </servlet>

       ……

       ……

    <servlet-mapping>

        <servlet-name>RefreshServlet</servlet-name>

        <url-pattern>/servlet/RefreshServlet</url-pattern>

    </servlet-mapping>

保存web.xml文件后,重新启动Tomcat

3)在浏览器地址栏中输入如下地址:

       http://localhost:8080/it315/servlet/RefreshServlet

 可以看到浏览器两秒钟后自动刷新网页文档的效果。

4RefreshServlet.java源文件中的第一条调用setHeader方法的语句注释掉,并取消第二条调用setHeader方法的语句的注释。重新编译RefreshServlet.java源文件并等待Tomcat重新装载RefreshServlet后,重复步骤(3)的操作,可以看到的浏览器两秒后自动去访问http://www.it315.org运行效果。