资源简介
用java代码实现的基于tomcat服务器的签到系统,能简单校验客服端ip是否重复、时间是否属于迟到、用户名是否存在、用户是否重复签到、并将签到结果保存在本地txt文件
代码片段和文件信息
package com.direct;
/**
* 签到系统
* @author AoTing
* @time 2015-10-28
*/
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Properties;
import java.util.Set;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class SignServlet
*/
@WebServlet(“/SignServlet“)
public class SignServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
//设置时间标准格式
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss“);
/**
* @see HttpServlet#doGet(HttpServletRequest request HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request HttpServletResponse response) throws ServletException IOException {
doPost(request response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request HttpServletResponse response) throws ServletException IOException {
request.setCharacterEncoding(“UTF-8“);
//从request中获取参数
String userName = request.getParameter(“userName“);
//获取客户端IP地址
String userIp = request.getRemoteAddr();
//获取服务器时间并转换成预设格式
String time = sdf.format(new Date());
//map valve值
String systemInfo = “[IP]:“+userIp +“ [签到时间]:“ + time;
//存放用户到map中
try {
saveUserInfo(response userName userIp systemInfo time);
} catch (ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//将签到情况存入本地txt文件中
saveInfo();
}
/**
*
* @param response
* @param userName 用户名字
* @param userIp 用户IP
* @param systemInfo
* @param time 服务器当前时间
* @throws IOException
* @throws ParseException
*/
private void saveUserInfo(HttpServletResponse responseString userName String userIpString systemInfoString time) throws IOException ParseException {
response.setCharacterEncoding(“utf-8“);
response.setContentType(“text/html“);
PrintWriter writer = response.getWriter();
//跳转指定页面
//检测IP是否重复
if(!checkIp(userIp systemInfo)){
writer.write(““);
writer.write(““);
writer.write(“tle>“);
writer.write(“签到结果“);
writer.write(“ tle>“);
writer.write(““);
writer.write(““);
writer.write(“同一IP地址只能签到一次请另选座位!“);
writer.write(““);
writer.write(““);
}
//IP验证通过后,检测本地用户列表是否有该用户名,验证用户名是否存在
if(checkIp(userIp systemInfo)&&!checkUserList(userName)){
writer.write(““);
writer.write(““);
writer.write(“tle>“);
writer.write(“签到结果“);
writ
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 834 2015-10-26 14:25 SignSystem\.classpath
文件 1043 2015-10-26 14:25 SignSystem\.project
文件 567 2015-10-26 14:25 SignSystem\.settings\.jsdtscope
文件 364 2015-10-26 14:25 SignSystem\.settings\org.eclipse.jdt.core.prefs
文件 482 2015-10-26 14:25 SignSystem\.settings\org.eclipse.wst.common.component
文件 345 2015-10-26 14:25 SignSystem\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2015-10-26 14:25 SignSystem\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2015-10-26 14:25 SignSystem\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 7711 2015-10-28 16:43 SignSystem\build\classes\com\direct\SignServlet.class
文件 1049 2015-10-28 16:30 SignSystem\build\classes\com\direct\TestClass.class
文件 28 2015-10-27 17:15 SignSystem\build\classes\com\direct\time.properties
文件 489 2015-10-27 13:33 SignSystem\build\classes\com\direct\UserList.class
文件 50 2015-10-27 15:15 SignSystem\build\classes\com\direct\UserList.txt
文件 7892 2015-10-28 16:43 SignSystem\src\com\direct\SignServlet.java
文件 765 2015-10-28 16:30 SignSystem\src\com\direct\TestClass.java
文件 28 2015-10-27 17:15 SignSystem\src\com\direct\time.properties
文件 178 2015-10-20 02:11 SignSystem\src\com\direct\UserList.java
文件 50 2015-10-27 15:15 SignSystem\src\com\direct\UserList.txt
文件 39 2015-10-26 14:25 SignSystem\WebContent\me
文件 391 2015-10-28 16:28 SignSystem\WebContent\SignView.html
文件 914 2015-10-26 15:07 SignSystem\WebContent\WEB-INF\web.xm
目录 0 2015-10-28 16:50 SignSystem\build\classes\com\direct
目录 0 2015-10-28 16:50 SignSystem\build\classes\com
目录 0 2015-10-28 16:50 SignSystem\src\com\direct
目录 0 2015-10-26 14:25 SignSystem\WebContent\WEB-INF\lib
目录 0 2015-10-28 16:50 SignSystem\build\classes
目录 0 2015-10-28 16:50 SignSystem\src\com
目录 0 2015-10-28 16:50 SignSystem\WebContent\me
目录 0 2015-10-28 16:50 SignSystem\WebContent\WEB-INF
目录 0 2015-10-28 16:50 SignSystem\.settings
............此处省略7个文件信息
评论
共有 条评论