Javaweb实现一个简单的学生签到签退系统

89 阅读1分钟

目录结构

image.png

要求:

image.png

代码

  • test_2.java

package rw;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import test_2.Data;

import test_2.Student;

@WebServlet("/check")

public class Test_2 extends HttpServlet {

protected void doGet(HttpServletRequest
    
    request, HttpServletResponse response)
		throws ServletException, IOException {
	String code = request.getParameter("code");
	// 获取ip
	String address = request.getRemoteAddr();
	boolean mark = true;
	//
	for (Student s : Data.data) {
		if (address.equals(s.ip)) {
			mark = false;
			break;
		}
	}
	if (mark) {
		for (Student s : Data.data) {
			if (s.code.equals(code)) {
				s.status = true;
				s.ip = address;
				break;
			}
		}
	}
	/*
	 * System.out.println(code); for(Student s: Data.data) { if(s.code.equals(code))
	 * { s.status = true; break; } }
	 */
	response.sendRedirect("Test_2.jsp");
}

}

  • test_3.java

package rw;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import test_2.Data;

import test_2.Student;

@WebServlet("/check_2")

public class Test_3 extends HttpServlet {

protected void doGet(HttpServletRequest 
    
    request, HttpServletResponse response)
    
		throws ServletException, IOException {
	String code = request.getParameter("code");
	// 获取ip
	String address_2 = request.getRemoteAddr();
	boolean mark_2 = true;
	
	for (Student s : Data.data) {
		if (address_2.equals(s.ip_2)) {
			mark_2 = false;
			break;
		}
	}
	if (mark_2) {
		for (Student s : Data.data) {
			if (s.code.equals(code)) {
				s.status_2 = true;
				s.ip_2 = address_2;
				break;
			}
		}
	}

	response.sendRedirect("Test_2.jsp");
}

}

  • Data.java

package test_2;

import java.util.ArrayList;

public class Data {

public static ArrayList data = new

ArrayList<Student>();

static {

 data.add(new Student("学号","姓名","班级"));

}

public static void main(String[] args) {

 for(Student s:data) {

	 System.out.println(s);

 }

}

}

  • Student.java

    package test_2;

public class Student {

public String code;

public String name;

public String team;

public boolean status = false;

public boolean status_2 = false;

public String ip;

public String ip_2;

public Student(String name, String code, 

String team) {

	this.name = name;

	this.code = code;

	this.team = team;

}

@Override

public String toString() {

	return "Student [code=" + code + ", name=" + name + ", team=" + team + "]";

}

}

  • Test_2.java

    package rw;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import test_2.Data;

import test_2.Student;

@WebServlet("/check")

public class Test_2 extends HttpServlet {

protected void doGet(HttpServletRequest 

request, HttpServletResponse response)

		throws ServletException, 

IOException {
	String code = request.getParameter("code");
	// 获取ip
	String address = request.getRemoteAddr();
	boolean mark = true;
	//
	for (Student s : Data.data) {
		if (address.equals(s.ip)) {
			mark = false;
			break;
		}
	}
	if (mark) {
		for (Student s : Data.data) {
			if (s.code.equals(code)) {
				s.status = true;
				s.ip = address;
				break;
			}
		}
	}
	/*
	 * System.out.println(code); for(Student s: Data.data) { if(s.code.equals(code))
	 * { s.status = true; break; } }
	 */
	response.sendRedirect("Test_2.jsp");
}

}

运行结果:

image.png