作者主页:夜未央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项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
1. 后端:servlet
2. 前端:JSP+bootstrap+jQuery
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中db.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入http://localhost:8080/ 登录

- package com.tjzhic.servlet;
-
- import java.io.IOException;
- import java.util.ArrayList;
-
- import javax.servlet.ServletContext;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
-
- import com.tjzhic.dao.StuDao;
- import com.tjzhic.dao.impl.StuDaoImpl;
- import com.tjzhic.entity.Stu;
- import com.tjzhic.util.Encrypt;
-
- public class ZAdminStuManage extends HttpServlet {
-
- /**
- *
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * Constructor of the object.
- */
- public ZAdminStuManage() {
- super();
- }
-
- /**
- * Destruction of the servlet.
- */
- public void destroy() {
- super.destroy(); // Just puts "destroy" string in log
- // Put your code here
- }
-
- /**
- * The doGet method of the servlet.
- *
- * 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.
- *
- * 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");
- ServletContext servletContext = request.getServletContext();
- StuDao stuDao = new StuDaoImpl();
- String action = request.getParameter("action");
- if("findStusLikeUsername".equals(action)){
- String username = request.getParameter("username").toString();
- ArrayList
stus = stuDao.findStusLikeUsername(username); - request.setAttribute("stus", stus);
- request.getRequestDispatcher("/zadmin/stumanage.jsp").forward(request, response);
- }else if("findStusLikeIdcode".equals(action)) {
- String idcode = request.getParameter("idcode").toString();
- ArrayList
stus = stuDao.findStusLikeIdcode(idcode); - request.setAttribute("stus", stus);
- request.getRequestDispatcher("/zadmin/stumanage.jsp").forward(request, response);
- }else if ("stuPassReset".equals(action)){
- String username = request.getParameter("username").toString();
- if(stuDao.passModify(username, Encrypt.SHA("000000")) != 0){
- request.setAttribute("stuPassResetMess", "* 用户 " + username + " 的密码已重置为‘000000’!");
- request.getRequestDispatcher("/zadmin/stumanage.jsp").forward(request, response);
- }else{
- request.setAttribute("stuPassResetMess", "* 用户 " + username + " 的密码清零操作失败!");
- request.getRequestDispatcher("/zadmin/stumanage.jsp").forward(request, response);
- }
- }else{
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/stumanage.jsp");
- }
- }
-
- /**
- * Initialization of the servlet.
- *
- * @throws ServletException if an error occurs
- */
- public void init() throws ServletException {
- // Put your code here
- }
-
- }
- package com.tjzhic.servlet;
-
- import java.io.IOException;
-
- import javax.servlet.ServletContext;
- 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.CurrstageDao;
- import com.tjzhic.dao.StageDao;
- import com.tjzhic.dao.impl.CurrstageDaoImpl;
- import com.tjzhic.dao.impl.StageDaoImpl;
- import com.tjzhic.entity.Adminuser;
- import com.tjzhic.entity.Stage;
- import com.tjzhic.util.Message;
-
- public class ZAdminStageSet extends HttpServlet {
-
- /**
- *
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * Constructor of the object.
- */
- public ZAdminStageSet() {
- super();
- }
-
- /**
- * Destruction of the servlet.
- */
- public void destroy() {
- super.destroy(); // Just puts "destroy" string in log
- // Put your code here
- }
-
- /**
- * The doGet method of the servlet.
- *
- * 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.
- *
- * 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");
- ServletContext servletContext = request.getServletContext();
- HttpSession session = request.getSession();
- String action = request.getParameter("action");
-
- if("stageSet".equals(action)){
- CurrstageDao currstageDao = new CurrstageDaoImpl();
- Adminuser adminuser = (Adminuser)session.getAttribute("adminuser");
- String adminname = adminuser.getAdminname();
- String currstage = request.getParameter("currstage");
- if (currstageDao.set(adminname, currstage) != 0) {
- servletContext.setAttribute("currstage", currstageDao.findCurrent());
- session.setAttribute("mess", new Message("stageSetMess", "阶段设置成功!"));
- }else {
- session.setAttribute("mess", new Message("stageAddMess", "阶段设置失败!"));
- }
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/stageset.jsp");
- }else{
- session.removeAttribute("mess");
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/stageset.jsp");
- }
- }
-
- /**
- * Initialization of the servlet.
- *
- * @throws ServletException if an error occurs
- */
- public void init() throws ServletException {
- // Put your code here
- }
-
- }
- package com.tjzhic.servlet;
-
- import java.io.IOException;
-
- import javax.servlet.ServletContext;
- 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.CourseDao;
- import com.tjzhic.dao.MajorDao;
- import com.tjzhic.dao.SchoolDao;
- import com.tjzhic.dao.impl.CourseDaoImpl;
- import com.tjzhic.dao.impl.MajorDaoImpl;
- import com.tjzhic.dao.impl.SchoolDaoImpl;
- import com.tjzhic.entity.Course;
- import com.tjzhic.entity.Major;
- import com.tjzhic.entity.School;
- import com.tjzhic.util.Message;
-
- public class ZAdminRelease extends HttpServlet {
-
- /**
- *
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * Constructor of the object.
- */
- public ZAdminRelease() {
- super();
- }
-
- /**
- * Destruction of the servlet.
- */
- public void destroy() {
- super.destroy();
- }
-
-
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
-
- this.doPost(request, response);
- }
-
-
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html; charset=utf-8");
- ServletContext servletContext = request.getServletContext();
- HttpSession session = request.getSession();
- SchoolDao schoolDao = new SchoolDaoImpl();
- MajorDao majorDao = new MajorDaoImpl();
- CourseDao courseDao = new CourseDaoImpl();
- String action = request.getParameter("action");
- //添加院校基本信息
- if("schoolAdd".equals(action)){
- School school = new School();
- school.setShcode(request.getParameter("shcode"));
- school.setShname(request.getParameter("shname"));
- school.setShaddr(request.getParameter("shaddr"));
- school.setShzip(request.getParameter("shzip"));
- school.setShtel(request.getParameter("shtel"));
- school.setShtest(request.getParameter("shtest"));
- school.setShyear(request.getParameter("shyear"));
- if(schoolDao.add(school) != 0){
- servletContext.setAttribute("school", school);
- session.setAttribute("mess", new Message("schoolAddMess", "学校基本信息设置成功!"));
- }else{
- session.setAttribute("mess", new Message("schoolAddMess", "学校基本信息设置失败!"));
- }
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/release.jsp");
- //添加新的专业
- }else if("majorAdd".equals(action)){
- String mcode = request.getParameter("mcode");
- Major major = new Major();
- major.setMcode(mcode);
- major.setMname(request.getParameter("mname"));
- major.setPlannum(Integer.parseInt(request.getParameter("plannum")));
- if(majorDao.findByMcode(mcode) != null){
- session.setAttribute("mess", new Message("majorAddMess", "专业代码不能重复!"));
- }else if(majorDao.add(major) != 0){
- servletContext.setAttribute("majors", majorDao.findAll());
- session.setAttribute("mess", new Message("majorAddMess", "专业添加成功!"));
- }else{
- session.setAttribute("mess", new Message("majorAddMess", "专业添加失败!"));
- }
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/release.jsp#major");
- //删除已有专业
- }else if("majorDelete".equals(action)){
- String mcode = request.getParameter("mcode");
- Major major = majorDao.findByMcode(mcode);
- if (major != null && !courseDao.findByCmname(major.getMname()).isEmpty()){
- session.setAttribute("mess", new Message("majorDeleteMess", "请先删除'"+major.getMname()+"'专业的所有课程!"));
- }
- else if(majorDao.deleteByMcode(mcode) != 0){
- servletContext.setAttribute("majors", majorDao.findAll());
- session.setAttribute("mess", new Message("majorDeleteMess", "专业删除成功!"));
- }else{
- session.setAttribute("mess", new Message("majorDeleteMess", "专业删除失败!"));
- }
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/release.jsp#major");
- //添加新的课程
- }else if ("courseAdd".equals(action)){
- String ccode = request.getParameter("ccode");
- Course course = new Course();
- course.setCcode(ccode);
- course.setCname(request.getParameter("cname"));
- course.setCmname(request.getParameter("cmname"));
- course.setCstarttime(request.getParameter("cstarttime"));
- course.setCendtime(request.getParameter("cendtime"));
- if(courseDao.findByCcode(ccode) != null){
- session.setAttribute("mess", new Message("courseAddMess", "课程代码不能重复!"));
- }else if(courseDao.add(course) != 0){
- servletContext.setAttribute("courses", courseDao.findAll());
- session.setAttribute("mess", new Message("courseAddMess", "课程添加成功!"));
- }else{
- session.setAttribute("mess", new Message("courseAddMess", "课程添加失败!"));
- }
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/release.jsp#course");
- //删除已有课程
- }else if("courseDelete".equals(action)){
- String ccode = request.getParameter("ccode");
- if(courseDao.deleteByCcode(ccode) != 0){
- servletContext.setAttribute("courses", courseDao.findAll());
- session.setAttribute("mess", new Message("courseDeleteMess", "课程删除成功!"));
- }else{
- session.setAttribute("mess", new Message("courseDeleteMess", "课程删除失败!"));
- }
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/release.jsp#course");
- //其他情况
- }else{
- session.removeAttribute("mess");
- response.sendRedirect(servletContext.getContextPath()+"/zadmin/release.jsp");
- }
- }
-
- /**
- * Initialization of the servlet.
- *
- * @throws ServletException if an error occurs
- */
- public void init() throws ServletException {
- // Put your code here
- }
-
- }
如果也想学习本系统,下面领取。关注并回复:126jsp