Java项目:JSP的高校在线报考系统

发布于:2022-12-13 ⋅ 阅读:(574) ⋅ 点赞:(0)

作者主页:夜未央5788

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

本项目分为管理员、教务人员、招生人员、学生等角色;

管理员角色主要功能包括:
系统状态、阶段定义、管理员维护、数据库管理、查看报名信息、我的登录历史、修改密码、退出系统;

教务人员主要功能包括:
系统状态、查看报名信息、准考证号分配、考场分配、录入成绩、我的登录历史、修改密码、退出系统;

招生人员主要功能包括:
系统状态、阶段设置、招考信息设置、查看报名信息、现场确认、学生密码清零、我的登录历史、修改密码、退出系统;

学生角色主要功能包括:
报考须知、我的报名信息、上传照片、报名表打印、准考证打印、成绩与录取查询、我的登录历史、修改密码、退出系统等;

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 
5.数据库:MySql 5.7版本;

6.是否Maven项目:否;

技术栈

1. 后端:Servlet

2. 前端:JSP+JavaScript+CSS

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中WebRoot/META-INF/context.xml配置文件中的数据库配置改为自己的配置;
4. 运行项目,学生角色使用http://localhost:8080/bkxt/index.jsp进行登录
学生账号/密码:zjfhit/123456

管理员登录:http://localhost:8080/bkxt/manage.jsp
管理员账号/密码:manager/123456
教务人员账号/密码:jiaowu/123456

招生人员账号/密码:zhaoban/123456

运行截图

 

 

 

 

 

 

 

 

 

相关代码 

AdminGrade

package com.tjzhic.servlet;

import java.io.IOException;
import java.io.PrintWriter;

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

public class AdminGrade extends HttpServlet {

  /**
   * Constructor of the object.
   */
  public AdminGrade() {
    super();
  }

  /**
   * Destruction of the servlet. <br>
   */
  public void destroy() {
    super.destroy(); // Just puts "destroy" string in log
    // Put your code here
  }

  /**
   * The doGet method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to get.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
    out.println("<HTML>");
    out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
    out.println("  <BODY>");
    out.print("    This is ");
    out.print(this.getClass());
    out.println(", using the GET method");
    out.println("  </BODY>");
    out.println("</HTML>");
    out.flush();
    out.close();
  }

  /**
   * The doPost method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to post.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
    out.println("<HTML>");
    out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
    out.println("  <BODY>");
    out.print("    This is ");
    out.print(this.getClass());
    out.println(", using the POST method");
    out.println("  </BODY>");
    out.println("</HTML>");
    out.flush();
    out.close();
  }

  /**
   * Initialization of the servlet. <br>
   *
   * @throws ServletException if an error occurs
   */
  public void init() throws ServletException {
    // Put your code here
  }

}

AdminLogin

package com.tjzhic.servlet;

import java.io.IOException;

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

import com.tjzhic.dao.AdminuserDao;
import com.tjzhic.dao.RecordDao;
import com.tjzhic.dao.impl.AdminuserDaoImpl;
import com.tjzhic.dao.impl.RecordDaoImpl;
import com.tjzhic.entity.Adminuser;
import com.tjzhic.entity.Record;
import com.tjzhic.util.Encrypt;

public class AdminLogin extends HttpServlet {

  /**
   * 
   */
  private static final long serialVersionUID = 1L;

  /**
   * Constructor of the object.
   */
  public AdminLogin() {
    super();
  }

  /**
   * Destruction of the servlet. <br>
   */
  public void destroy() {
    super.destroy(); // Just puts "destroy" string in log
    // Put your code here
  }

  /**
   * The doGet method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to get.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    this.doPost(request, response);
  }

  /**
   * The doPost method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to post.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    response.setContentType("text/html; charset=utf-8");
    HttpSession session = request.getSession();
    AdminuserDao adminuserDao = new AdminuserDaoImpl();
    RecordDao recordDao = new RecordDaoImpl();
    
    String adminname = request.getParameter("adminname");
    String adminpass = request.getParameter("adminpass");
    String code = request.getParameter("code");
    
    /*表单数据保存至request作用域*/
    request.setAttribute("adminname", adminname);
    request.setAttribute("adminpass", adminpass);
    request.setAttribute("code", code);
    /*表单数据规范性的服务器端验证*/
    String mess = validateForm(adminname, adminpass, code);
    if (!"".equals(mess)){
      request.setAttribute("adminLoginMess", mess);
      request.getRequestDispatcher("/manage.jsp").forward(request, response);
    }else {
      String sessioncode = session.getAttribute("sessioncode").toString();
      
      if (!code.equals(sessioncode)) {
        request.setAttribute("adminLoginMess", "* 验证码错误!");
        request.getRequestDispatcher("/manage.jsp").forward(request, response);
      }else {
        Adminuser adminuser = adminuserDao.validateLogin(adminname, Encrypt.SHA(adminpass));
        if (adminuser == null) {
          request.setAttribute("adminLoginMess", "* 用户名或密码输入错误!");
          request.getRequestDispatcher("/manage.jsp").forward(request, response);
        }else {
          Record record = new Record();
          record.setLogname(adminuser.getAdminname());
          record.setUsergroup(adminuser.getAdmingroup());
          record.setLogip(request.getRemoteAddr());
          if (recordDao.add(record) != 0) {
            session.setAttribute("adminuser", adminuser);
            response.sendRedirect(request.getContextPath() + "/admin/state.jsp");
            
          } else {
            request.setAttribute("adminLoginMess", "* 登录异常!");
            request.getRequestDispatcher("/manage.jsp").forward(request, response);
          }
        }
      }
    }
  }
  
  
  private String validateForm(String adminname,String adminpass,String code){
    if (adminname == null || !adminname.matches("\\w{6,20}")){
      return "* 用户名错误!";
    }else if (adminpass == null || !adminpass.matches("\\w{6,20}")) {
      return "* 密码错误!";
    }else if (code == null || !code.matches("\\d{4}")) {
      return "* 验证码错误!";
    }
    return "";
  }
  /**
   * Initialization of the servlet. <br>
   *
   * @throws ServletException if an error occurs
   */
  public void init() throws ServletException {
    // Put your code here
  }

}

JAdminCardNum

package com.tjzhic.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

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

import com.tjzhic.dao.RecordDao;
import com.tjzhic.dao.impl.MajorDaoImpl;
import com.tjzhic.dao.impl.RecordDaoImpl;
import com.tjzhic.dao.impl.ReginfoDaoImpl;
import com.tjzhic.entity.Major;
import com.tjzhic.entity.Reginfo;
import com.tjzhic.entity.School;
import com.tjzhic.entity.SupGrade;
import com.tjzhic.util.PageModel;

public class JAdminCardNum extends HttpServlet {

	/**
	 * Constructor of the object.
	 */
	public JAdminCardNum() {
		super();
	}

	/**
	 * Destruction of the servlet. <br>
	 */
	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here

	}

	/**
	 * The doGet method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to get.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html");
		this.doPost(request, response);
	}

	/**
	 * The doPost method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to
	 * post.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		response.setContentType("text/html");
		int pageSize = request.getParameter("pageSize") == null ? 5 : Integer
				.parseInt(request.getParameter("pageSize").toString());
		int pageNo = request.getParameter("pageNo") == null ? 1 : Integer
				.parseInt(request.getParameter("pageNo").toString());
		RecordDao recordDao = new RecordDaoImpl();

		String method = request.getParameter("action");

		if (method != null && method.equals("assign")) {
			ReginfoDaoImpl reginfoDao = new ReginfoDaoImpl();
			ArrayList<Reginfo> array = reginfoDao.findAll();
			Map<String, Integer> map = new HashMap<String, Integer>();
			School school = (School) this.getServletContext().getAttribute(
					"school");
			ArrayList<Major> majors = (ArrayList<Major>) this
					.getServletContext().getAttribute("majors");
			String shoolCode = school.getShcode();
			String year = school.getShyear();
			String testcardnum = year + shoolCode;

			for (Major major : majors) {
				map.put(major.getMname(), 1);
			}
			for (Reginfo reg : array) {
				MajorDaoImpl majorimp = new MajorDaoImpl();
				if (reg.getIsconfirm() == 0)
					continue;
				String tempMajor = reg.getMname();
				int tempNum = (Integer) map.get(tempMajor);
				map.put(tempMajor, tempNum + 1);
				testcardnum = testcardnum + majorimp.getByName(tempMajor)
						+ tempNum;
				reginfoDao.addCode(reg.getUsername(), testcardnum);
			}
		}
		PageModel<Reginfo> pm = recordDao.pageReginfo(pageSize, pageNo);
		pm.setPageNav(request.getRequestURI());
		request.setAttribute("pm", pm);
		request.getRequestDispatcher("/jadmin/assignnum.jsp").forward(request,
				response);
	}

	/**
	 * Initialization of the servlet. <br>
	 * 
	 * @throws ServletException
	 *             if an error occurs
	 */
	public void init() throws ServletException {
		// Put your code here
	}

}

JAdminGradeInput

package com.tjzhic.servlet;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;

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

import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

import com.tjzhic.dao.RecordDao;
import com.tjzhic.dao.impl.GradeDaoImpl;
import com.tjzhic.dao.impl.RecordDaoImpl;
import com.tjzhic.entity.Grade;
import com.tjzhic.entity.SupGrade;
import com.tjzhic.util.PageModel;

public class JAdminGradeInput extends HttpServlet {

  /**
   * Constructor of the object.
   */
  public JAdminGradeInput() {
    super();
  }

  /**
   * Destruction of the servlet. <br>
   */
  public void destroy() {
    super.destroy(); // Just puts "destroy" string in log
    // Put your code here
  }

  /**
   * The doGet method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to get.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

   this.doPost(request, response);
  }

  /**
   * The doPost method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to post.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    response.setContentType("text/html");
    int pageSize = request.getParameter("pageSize") == null ? 5 : Integer.parseInt(request.getParameter("pageSize").toString());
    int pageNo = request.getParameter("pageNo") == null ? 1 : Integer.parseInt(request.getParameter("pageNo").toString());

    HttpSession session = request.getSession();
    RecordDao recordDao = new RecordDaoImpl();
    System.out.println(pageNo);
    PageModel<SupGrade> pm =  recordDao.pageByLogname(pageSize, pageNo);
    pm.setPageNav(request.getRequestURI());
    
    File file = (File)request.getAttribute("file1");
	if(file != null){
		try {
			GradeDaoImpl gradeImpl = new GradeDaoImpl();
			Workbook workbook = Workbook.getWorkbook(file);
			Sheet sheet = workbook.getSheet(0);
			for(int row = 2;row < sheet.getRows()-1;row++){
				SupGrade supgrade = new SupGrade();
				supgrade.setTestcardnum(sheet.getCell(1,row).getContents().trim());
				supgrade.setSname(sheet.getCell(2,row).getContents().trim());
				supgrade.setCname(sheet.getCell(3,row).getContents().trim());
				supgrade.setScore(Integer.parseInt(sheet.getCell(4,row).getContents().trim()));
				supgrade.setNote(sheet.getCell(5,row).getContents().trim());
				gradeImpl.gradeAdd(supgrade);	
				}
		} catch (BiffException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
    request.setAttribute("pm", pm);
    request.getRequestDispatcher("/jadmin/grade.jsp").forward(request, response);
  }

  /**
   * Initialization of the servlet. <br>
   *
   * @throws ServletException if an error occurs
   */
  public void init() throws ServletException {
    // Put your code here
  }

}

如果也想学习本系统,下面领取。关注并回复:114jsp


网站公告

今日签到

点亮在社区的每一天
去签到