页面定时跳转
页面定时跳转是指一个页面在显示了一定的时间之后自动跳转到另外一个页面,实现起来非常容易:
<meta content="3;login.jsp" http-equiv="Refresh" />
以上这行代码实现了56秒之后自动跳转到login.jsp页面,只使用了html的meta标签
下面为转载的内容,是在java servlet中实现的,而上面的方式则可以在.jsp等view中实现。
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
可以看到浏览器两秒钟后自动刷新网页文档的效果。
(4)将RefreshServlet.java源文件中的第一条调用setHeader方法的语句注释掉,并取消第二条调用setHeader 方法的语句的注释。重新编译RefreshServlet.java源文件并等待Tomcat重新装载RefreshServlet后,重复步骤(3)的 操作,可以看到的浏览器两秒后自动去访问http://www.it315.org的运行效果。