您的位置:首页 > 运维架构 > Tomcat

作业之用Servlet统计一个网站的访问量(服务器为tomcat6.X)

2014-06-10 16:23 288 查看
作业上总算是跟上日期了,这次的作业是使用Servlet实现统计一个网站的访问量的功能,这次作业比较简单,本来

我是想加入每次登录时间的记录的,结果实现的时候出了点问题,没办法只能作罢。因为每天都是讲的新知识,根本不

敢在作业上花太多时间,所以暂时搁置。这次作业比较简单,上代码,复习去了。

package Jmq.homework2;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

public class MyServletThread extends HttpServlet {
private Parser parser = new Parser();
@Override
protected synchronized void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String path = getServletContext().getRealPath("/Data.xml");
File xml = new File(path);
try {
String num = ((Element) parser.getParser().read(xml)
.selectNodes("//count").get(0)).getText();
resp.getWriter().write("<h1>" + num + "</h1>");
parser.parser2Doc(xml);
} catch (Exception e) {
e.printStackTrace();
}
}
}

class Parser {
// 获取SAX解析器
public SAXReader getParser() {
return new SAXReader();
}

public Document parser(File xml) throws Exception {
SAXReader reader = getParser();
Document doc = reader.read(xml);
return doc;
}

public void writeDocument2Xml(Document doc, File xml) throws Exception {
// 1. 创建一个输出流对象
XMLWriter writer = new XMLWriter(new OutputStreamWriter(
new FileOutputStream(xml), "utf-8"));
// 2. 给指定的xml文件输出document对象
writer.write(doc);
// 3. 释放资源
writer.flush();
writer.close();
}

public void parser2Doc(File xml) throws Exception {
Document doc = parser(xml);
Node node = doc.selectSingleNode("//count");
String i = node.getText();
Integer j = Integer.parseInt(i);
j++;
node.setText(j + "");
writeDocument2Xml(doc, xml);
}

}

因为还没有学习数据库,只能暂时把数据写入XML了..

<?xml version="1.0" encoding="UTF-8"?>
<data>
<count>0</count>
</data>


通过这次作业,让我学习了到一些网站方面的知识,努力,坚持,加油!~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐