servlet自动刷新页面(比赛文字直播)

本文详细介绍了如何使用Java、JDK、eclipse、Tomcat等技术搭建开发环境,部署自动刷新页面的程序,实现赛事直播功能。通过在页面上实时更新来自文本文件的数据,达到每15秒自动刷新页面的效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java老师只留下一个servlet名词就叫全班人写程序。经过一个晚上加一个上午终于部署好了开发环境,并编写了一个自动刷新页面的程序,主要还是参考菜鸟教程。

(一)首先要下好java的JDK和安装好eclipse。

(二)下载Tomcat,到Tomcat官网,找到下载,版本是


然后直接解压到一个盘中:


(三)在解压到的文件夹的lib文件夹找到servlet-api,把它复制到java安装目录JRE下的lib中。

(四)在Eclipse编写代码:

如果提示类似错误“Access restriction: The type 'HttpServlet' is not API (restriction on required library 'D:\JAVA\JRE\lib\ext\servlet-api.jar')”

根据stackoverflow,解决方法如下:

1、右键.java文件,选择build path

2、点击configure build path 进入设置界面,找到java build path,找到library

3、删除(Remove)JRE System Library

4、重新添加JRE System Library(ps如果想在命令行编译java文件需要点击add external jar,添加servlet-api.jar)

package servletRefresh;

//导入必需的 java 库
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;


public class Refresh extends HttpServlet {

	// 处理 GET 方法请求的方法
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// 设置刷新自动加载的事件间隔为 15 秒
		response.setIntHeader("Refresh", 15);

		// 设置响应内容类型
		response.setContentType("text/html;charset=gb2312");

		Scanner s = null;
		Scanner i = null;
		PrintWriter pw = null;

		s = new Scanner(new File("D:/apache-tomcat-8.0.29/webapps/ROOT/Test/number.txt"));
		String strLine = s.nextLine();
		i = new Scanner(strLine);
		int num1 = i.nextInt();
		int num2 = i.nextInt();

		// 获取当前的时间
		Calendar calendar = new GregorianCalendar();
		String am_pm;
		int hour = calendar.get(Calendar.HOUR);
		int minute = calendar.get(Calendar.MINUTE);
		int second = calendar.get(Calendar.SECOND);
		if (calendar.get(Calendar.AM_PM) == 0)
			am_pm = "AM";
		else
			am_pm = "PM";

		String CT = hour + ":" + minute + ":" + second + " " + am_pm;

		PrintWriter out = response.getWriter();
		String title = "程序猿vs程序媛";
		out.println("<html>\n" + "<head><title>" + title + "</title></head>\n" + "<body bgcolor=\"#f0f0f0\">\n"
				+ "<h1 align=\"center\">" + title + "</h1>\n" + "<p align=\"center\">当前时间是:" + CT + "</p>\n" + "<p align=\"center\">猿队:媛队 " + num1 + ":"
				+ num2 + "</p>\n");
		//获取,并显示比赛状况
		while (s.hasNextLine()) {
			String strline = s.nextLine();
			out.println("<p align=\"center\">" + strline + "</p>\n");
		}

		i.close();
		s.close();
	}

	// 处理 POST 方法请求的方法
	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);
	}
}
(五)编译后,在项目文件夹bin里面找到包文件夹,将它复制到 安装Tomcat的盘\apache-tomcat-8.0.29\webapps\ROOT\WEB-INF\classes里面

(六)修改 安装Tomcat\apache-tomcat-8.0.29\webapps\ROOT\WEB-INF\里面的web文件

简单解释一下:

<servlet-name>是这个servlet的名字。

<servlet-class>class文件的所在位置,servletRefresh是我们刚刚复制到classes里面的文件夹(包)。

<url-pattern>就是匹配的url(输入的网址)。


(七)在命令行运行:

set PATH=D:\JAVA\SDK\bin;%PATH%

set JAVA_HOME=D:\JAVA\SDK

D:\apache-tomcat-8.0.29\bin\startup.bat

(八)输入网址localhost:8080/Refresh就可以运行应用了。

---------------------------以上就是配置环境,启动应用的一般步骤了----------------------

(九)实现了赛事直播,就是在一个名为number文档文件(路径是D:\apache-tomcat-8.0.29\webapps\ROOT\Test)输入比分和赛事状况,页面每十五秒更新一次,把文档里的内容显示到页面上。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值