当前位置:Gxlcms > 数据库问题 > java jsp实现网络考试系统(mysql)

java jsp实现网络考试系统(mysql)

时间:2021-07-01 10:21:17 帮助过:10人阅读

java网络考试系统

功能:可进行学生、管理员登录,学生考试、管理员出卷、列表分页
@目录

  • java网络考试系统
    • 实现效果
    • 主要代码实现
    • 写在最后

实现效果

技术图片
技术图片
技术图片

主要代码实现

  1. <code class="language-java">package cn.itbaizhan.tyut.exam.sys.servlets;
  2. import java.io.IOException;
  3. import java.lang.reflect.InvocationTargetException;
  4. import javax.servlet.ServletException;
  5. import javax.servlet.http.HttpServlet;
  6. import javax.servlet.http.HttpServletRequest;
  7. import javax.servlet.http.HttpServletResponse;
  8. import org.apache.commons.beanutils.BeanUtils;
  9. import cn.itbaizhan.tyut.exam.common.PageControl;
  10. import cn.itbaizhan.tyut.exam.common.Pager;
  11. import cn.itbaizhan.tyut.exam.common.Tools;
  12. import cn.itbaizhan.tyut.exam.model.SysFunction;
  13. import cn.itbaizhan.tyut.exam.sys.services.impl.FunService;
  14. import cn.itbaizhan.tyut.exam.sys.services.interfaces.IFunService;
  15. public class FunServlet extends HttpServlet {
  16. IFunService service = new FunService();
  17. @Override
  18. protected void service(HttpServletRequest request, HttpServletResponse response)
  19. throws ServletException, IOException {
  20. String cmd = request.getParameter("cmd");
  21. if(cmd.equals("add")){
  22. addfun(request,response);
  23. }else if(cmd.equals("list")){
  24. funlist(request,response);
  25. }else if(cmd.equals("toedit")){
  26. toedit(request,response);
  27. }else if(cmd.equals("edit")){
  28. edit(request,response);
  29. }
  30. }
  31. /**
  32. * 修改系统功能
  33. * @param request
  34. * @param response
  35. */
  36. private void edit(HttpServletRequest request, HttpServletResponse response) {
  37. SysFunction fun = new SysFunction();
  38. try {
  39. BeanUtils.populate(fun, request.getParameterMap());
  40. Integer rtn = service.edit(fun);
  41. if(rtn>0){
  42. response.sendRedirect(Tools.Basepath(request, response)+"sys/fun?cmd=list");
  43. }else{
  44. request.setAttribute("msg", "保存系统功能失败!");
  45. request.getRequestDispatcher("/sys/function/edit.jsp").forward(request, response);
  46. }
  47. } catch (Exception e) {
  48. e.printStackTrace();
  49. }
  50. }
  51. /**
  52. * 初始化修改页面
  53. * @param request
  54. * @param response
  55. * @throws IOException
  56. * @throws ServletException
  57. */
  58. private void toedit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  59. SysFunction fun = new SysFunction();
  60. fun.setFunid(Integer.parseInt(request.getParameter("id")));
  61. fun = service.detail(fun);
  62. if(fun!=null){
  63. request.setAttribute("item",fun);
  64. request.getRequestDispatcher("/sys/function/edit.jsp").forward(request, response);
  65. }else{
  66. request.setAttribute("msg", "需要修改的系统功能不存在。");
  67. request.getRequestDispatcher("/error.jsp").forward(request, response);
  68. }
  69. }
  70. /**
  71. * 查询功能列表
  72. * @param request
  73. * @param response
  74. * @throws IOException
  75. * @throws ServletException
  76. */
  77. private void funlist(HttpServletRequest request,
  78. HttpServletResponse response) throws ServletException, IOException {
  79. String sname = request.getParameter("sname");
  80. SysFunction fun = new SysFunction();
  81. if(sname!=null && !sname.equals("")){
  82. fun.setFunname(sname);
  83. }
  84. PageControl pc = new PageControl();
  85. Integer currindex = 1;
  86. if(request.getParameter("index")!=null){
  87. currindex = Integer.parseInt(request.getParameter("index"));
  88. }
  89. pc.setCurrentindex(currindex);
  90. //pc.setPagesize(5);
  91. Pager<SysFunction> pager = service.list(fun, pc);
  92. request.setAttribute("pager", pager);
  93. request.getRequestDispatcher("/sys/function/list.jsp").forward(request, response);
  94. }
  95. /**
  96. * 增加系统功能
  97. * @param request
  98. * @param response
  99. */
  100. private void addfun(HttpServletRequest request, HttpServletResponse response) {
  101. SysFunction fun = new SysFunction();
  102. try {
  103. BeanUtils.populate(fun,request.getParameterMap());
  104. Integer rtn = service.addfun(fun);
  105. if(rtn>0){
  106. response.sendRedirect(Tools.Basepath(request, response)+"sys/fun?cmd=list");
  107. }else{
  108. request.setAttribute("msg", "保存系统功能失败!");
  109. request.getRequestDispatcher("/sys/function/add.jsp").forward(request, response);
  110. }
  111. } catch (Exception e) {
  112. e.printStackTrace();
  113. }
  114. }
  115. }
  116. </code>
  1. <code class="language-java">package cn.itbaizhan.tyut.exam.sys.servlets;
  2. import java.io.IOException;
  3. import java.lang.reflect.InvocationTargetException;
  4. import java.util.List;
  5. import javax.servlet.ServletException;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9. import org.apache.commons.beanutils.BeanUtils;
  10. import cn.itbaizhan.tyut.exam.common.PageControl;
  11. import cn.itbaizhan.tyut.exam.common.Pager;
  12. import cn.itbaizhan.tyut.exam.common.Tools;
  13. import cn.itbaizhan.tyut.exam.model.Paper;
  14. import cn.itbaizhan.tyut.exam.model.Subject;
  15. import cn.itbaizhan.tyut.exam.sys.services.impl.PaperService;
  16. import cn.itbaizhan.tyut.exam.sys.services.interfaces.IPaperService;
  17. public class PaperServlet extends HttpServlet {
  18. IPaperService service = new PaperService();
  19. protected void service(HttpServletRequest request, HttpServletResponse response)
  20. throws ServletException, IOException {
  21. String cmd = request.getParameter("cmd");
  22. if(cmd.equals("add")){
  23. addsubject(request,response);
  24. }else if(cmd.equals("list")){
  25. list(request,response);
  26. }else if(cmd.equals("slist")){
  27. slist(request,response);
  28. }
  29. }
  30. /**
  31. * 生成试题功能
  32. * @param request
  33. * @param response
  34. */
  35. private void addsubject(HttpServletRequest request, HttpServletResponse response) {
  36. Paper paper = new Paper();
  37. try {
  38. BeanUtils.populate(paper,request.getParameterMap());
  39. Integer rtn = service.addpaper(paper) ;
  40. if(rtn>0){
  41. response.sendRedirect(Tools.Basepath(request, response)+"sys/paper?cmd=list");
  42. }else{
  43. request.setAttribute("msg", "增加试题功能失败!");
  44. request.getRequestDispatcher("/sys/paper/add.jsp").forward(request, response);
  45. }
  46. } catch (Exception e) {
  47. e.printStackTrace();
  48. }
  49. }
  50. /**
  51. * 查询试题列表
  52. * @param request
  53. * @param response
  54. * @throws IOException
  55. * @throws ServletException
  56. */
  57. private void list(HttpServletRequest request,
  58. HttpServletResponse response) throws ServletException, IOException {
  59. String pname = request.getParameter("pname");
  60. Paper paper = new Paper();
  61. if(pname!=null && !pname.equals("")){
  62. paper.setPname(pname);
  63. }
  64. PageControl pc = new PageControl();
  65. Integer currindex = 1;
  66. if(request.getParameter("index")!=null){
  67. currindex = Integer.parseInt(request.getParameter("index"));
  68. }
  69. pc.setCurrentindex(currindex);
  70. //pc.setPagesize(5);
  71. Pager<Paper> pager = service.list(paper, pc);
  72. //
  73. System.out.println(pager.getList());;
  74. request.setAttribute("pager", pager);
  75. request.getRequestDispatcher("/sys/paper/list.jsp").forward(request, response);
  76. }
  77. private void slist(HttpServletRequest request,
  78. HttpServletResponse response) throws ServletException, IOException {
  79. Paper paper = new Paper();
  80. String pname = new String(request.getParameter("pname").getBytes("iso-8859-1"), "utf-8");
  81. paper.setPname(pname);
  82. List<Subject> subjects = service.subjectlist(paper);
  83. request.setAttribute("subjects", subjects);
  84. request.getRequestDispatcher("/sys/paper/subjects.jsp").forward(request, response);
  85. }
  86. }
  87. </code>
  1. <code class="language-java">package cn.itbaizhan.tyut.exam.sys.servlets;
  2. import java.io.IOException;
  3. import java.io.PrintWriter;
  4. import java.lang.reflect.InvocationTargetException;
  5. import java.util.List;
  6. import javax.servlet.ServletConfig;
  7. import javax.servlet.ServletException;
  8. import javax.servlet.http.HttpServlet;
  9. import javax.servlet.http.HttpServletRequest;
  10. import javax.servlet.http.HttpServletResponse;
  11. import org.apache.commons.beanutils.BeanUtils;
  12. import com.jspsmart.upload.SmartUpload;
  13. import cn.itbaizhan.tyut.exam.common.DBUnitHelper;
  14. import cn.itbaizhan.tyut.exam.common.PageControl;
  15. import cn.itbaizhan.tyut.exam.common.Pager;
  16. import cn.itbaizhan.tyut.exam.common.Tools;
  17. import cn.itbaizhan.tyut.exam.model.Paper;
  18. import cn.itbaizhan.tyut.exam.model.Studentpaper;
  19. import cn.itbaizhan.tyut.exam.model.Subject;
  20. import cn.itbaizhan.tyut.exam.sys.services.impl.StudentpaperService;
  21. import cn.itbaizhan.tyut.exam.sys.services.impl.SubjectService;
  22. import cn.itbaizhan.tyut.exam.sys.services.interfaces.IStudentpaperService;
  23. import cn.itbaizhan.tyut.exam.sys.services.interfaces.ISubjectService;
  24. public class StudentpaperServlet extends HttpServlet {
  25. IStudentpaperService service = new StudentpaperService();
  26. @Override
  27. protected void service(HttpServletRequest request, HttpServletResponse response)
  28. throws ServletException, IOException {
  29. String cmd = request.getParameter("cmd");
  30. //
  31. if(cmd.equals("add")){
  32. //
  33. add(request,response);
  34. //
  35. }
  36. //
  37. else if(cmd.equals("list")){
  38. //
  39. list(request,response);
  40. //
  41. }
  42. //
  43. else if(cmd.equals("listByRightcount")){
  44. //
  45. listByRightcount(request,response);
  46. //
  47. }
  48. if(cmd.equals("list")){
  49. list(request,response);
  50. }else if(cmd.equals("score")){
  51. score(request,response);
  52. }else if(cmd.equals("stupaper")){
  53. StudentPaperList(request,response);
  54. }
  55. }
  56. /**
  57. * 查询试卷得分
  58. * @param request
  59. * @param response
  60. * @throws IOException
  61. * @throws ServletException
  62. */
  63. private void score(HttpServletRequest request,
  64. HttpServletResponse response) throws ServletException, IOException {
  65. Studentpaper stupaper = new Studentpaper();
  66. try {
  67. BeanUtils.populate(stupaper,request.getParameterMap());
  68. } catch (IllegalAccessException e) {
  69. // TODO Auto-generated catch block
  70. e.printStackTrace();
  71. } catch (InvocationTargetException e) {
  72. // TODO Auto-generated catch block
  73. e.printStackTrace();
  74. }
  75. System.out.println(stupaper.getUserid()+stupaper.getSpid());
  76. List<Studentpaper> studentpaper = service.listByRightcount(stupaper);
  77. Integer score = studentpaper.get(0).getRightcount();
  78. request.setAttribute("score", score);
  79. PrintWriter out = response.getWriter();
  80. out.println("您本次得分" + score * 2 + "分!");
  81. out.flush();
  82. out.close();
  83. //request.getRequestDispatcher("/sys/paper/subjects.jsp").forward(request, response);
  84. }
  85. /**
  86. * 查询详细错题
  87. * @param request
  88. * @param response
  89. * @throws IOException
  90. * @throws ServletException
  91. */
  92. private void list(HttpServletRequest request,
  93. HttpServletResponse response) throws ServletException, IOException {
  94. Studentpaper studentpaper = new Studentpaper();
  95. PageControl pc = new PageControl();
  96. Integer currindex = 1;
  97. if(request.getParameter("index")!=null){
  98. currindex = Integer.parseInt(request.getParameter("index"));
  99. }
  100. pc.setCurrentindex(currindex);
  101. //pc.setPagesize(5);
  102. studentpaper.setUserid((Integer) request.getSession().getAttribute("userid"));
  103. studentpaper.setSpid(request.getParameter("spid"));
  104. Pager<Subject> pager = service.list(studentpaper, pc);
  105. request.setAttribute("pager", pager);
  106. request.getRequestDispatcher("/user/paper/studenterror.jsp").forward(request, response);
  107. }
  108. /**
  109. * 增加试题功能
  110. * @param request
  111. * @param response
  112. *//*
  113. private void addsubject(HttpServletRequest request, HttpServletResponse response) {
  114. Subject subject = new Subject();
  115. try {
  116. BeanUtils.populate(subject,request.getParameterMap());
  117. Integer rtn = service.addsubject(subject);
  118. if(rtn>0){
  119. response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
  120. }else{
  121. request.setAttribute("msg", "增加试题功能失败或请不要添加相同试题!");
  122. request.getRequestDispatcher("/sys/subject/add.jsp").forward(request, response);
  123. }
  124. } catch (Exception e) {
  125. e.printStackTrace();
  126. }
  127. }
  128. */
  129. private void StudentPaperList(HttpServletRequest request, HttpServletResponse response) {
  130. Studentpaper studentpaper = new Studentpaper();
  131. Integer userid = (Integer) request.getSession().getAttribute("userid");
  132. studentpaper.setUserid(userid);
  133. List<Studentpaper> papers = service.StudentPaperList(studentpaper);
  134. request.setAttribute("papers", papers);
  135. try {
  136. request.getRequestDispatcher("/user/paper/studentpaper.jsp").forward(request, response);
  137. } catch (ServletException e) {
  138. // TODO Auto-generated catch block
  139. e.printStackTrace();
  140. } catch (IOException e) {
  141. // TODO Auto-generated catch block
  142. e.printStackTrace();
  143. }
  144. }
  145. }
  146. </code>
  1. <code class="language-java">package cn.itbaizhan.tyut.exam.sys.servlets;
  2. import java.io.IOException;
  3. import java.util.List;
  4. import javax.servlet.ServletConfig;
  5. import javax.servlet.ServletException;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9. import org.apache.commons.beanutils.BeanUtils;
  10. import com.jspsmart.upload.SmartUpload;
  11. import cn.itbaizhan.tyut.exam.common.DBUnitHelper;
  12. import cn.itbaizhan.tyut.exam.common.PageControl;
  13. import cn.itbaizhan.tyut.exam.common.Pager;
  14. import cn.itbaizhan.tyut.exam.common.Tools;
  15. import cn.itbaizhan.tyut.exam.model.Subject;
  16. import cn.itbaizhan.tyut.exam.sys.services.impl.SubjectService;
  17. import cn.itbaizhan.tyut.exam.sys.services.interfaces.ISubjectService;
  18. public class SubjectServlet extends HttpServlet {
  19. ISubjectService service = new SubjectService();
  20. @Override
  21. protected void service(HttpServletRequest request, HttpServletResponse response)
  22. throws ServletException, IOException {
  23. String cmd = request.getParameter("cmd");
  24. if(cmd.equals("add")){
  25. addsubject(request,response);
  26. }else if(cmd.equals("list")){
  27. list(request,response);
  28. }else if(cmd.equals("toedit")){
  29. toedit(request,response);
  30. }else if(cmd.equals("edit")){
  31. edit(request,response);
  32. }
  33. }
  34. /**
  35. * 修改试题功能
  36. * @param request
  37. * @param response
  38. */
  39. private void edit(HttpServletRequest request, HttpServletResponse response) {
  40. Subject subject = new Subject();
  41. try {
  42. BeanUtils.populate(subject, request.getParameterMap());
  43. Integer rtn = service.edit(subject);
  44. if(rtn>0){
  45. response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
  46. }else{
  47. request.setAttribute("msg", "编辑试题功能失败!");
  48. request.getRequestDispatcher("/sys/subject/edit.jsp").forward(request, response);
  49. }
  50. } catch (Exception e) {
  51. e.printStackTrace();
  52. }
  53. }
  54. /**
  55. * 初始化修改页面
  56. * @param request
  57. * @param response
  58. * @throws IOException
  59. * @throws ServletException
  60. */
  61. private void toedit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  62. Subject subject = new Subject();
  63. subject.setSid(Integer.parseInt(request.getParameter("id")));
  64. subject = service.detail(subject);
  65. if(subject!=null){
  66. request.setAttribute("item",subject);
  67. request.getRequestDispatcher("/sys/subject/edit.jsp").forward(request, response);
  68. }else{
  69. request.setAttribute("msg", "需要修改的试题功能不存在。");
  70. request.getRequestDispatcher("/error.jsp").forward(request, response);
  71. }
  72. }
  73. /**
  74. * 查询试题列表
  75. * @param request
  76. * @param response
  77. * @throws IOException
  78. * @throws ServletException
  79. */
  80. private void list(HttpServletRequest request,
  81. HttpServletResponse response) throws ServletException, IOException {
  82. String scontent = request.getParameter("scontent");
  83. Subject subject = new Subject();
  84. if(scontent!=null && !scontent.equals("")){
  85. subject.setScontent(scontent);
  86. }
  87. PageControl pc = new PageControl();
  88. Integer currindex = 1;
  89. if(request.getParameter("index")!=null){
  90. currindex = Integer.parseInt(request.getParameter("index"));
  91. }
  92. pc.setCurrentindex(currindex);
  93. //pc.setPagesize(5);
  94. Pager<Subject> pager = service.list(subject, pc);
  95. request.setAttribute("pager", pager);
  96. request.getRequestDispatcher("/sys/subject/list.jsp").forward(request, response);
  97. }
  98. /**
  99. * 增加试题功能
  100. * @param request
  101. * @param response
  102. */
  103. private void addsubject(HttpServletRequest request, HttpServletResponse response) {
  104. Subject subject = new Subject();
  105. try {
  106. BeanUtils.populate(subject,request.getParameterMap());
  107. Integer rtn = service.addsubject(subject);
  108. if(rtn>0){
  109. response.sendRedirect(Tools.Basepath(request, response)+"sys/subject?cmd=list");
  110. }else{
  111. request.setAttribute("msg", "增加试题功能失败或请不要添加相同试题!");
  112. request.getRequestDispatcher("/sys/subject/add.jsp").forward(request, response);
  113. }
  114. } catch (Exception e) {
  115. e.printStackTrace();
  116. }
  117. }
  118. }
  119. </code>

写在最后

交流:3459067873

java jsp实现网络考试系统(mysql)

标签:tst   nim   mod   slist   except   commons   ges   targe   parse   

人气教程排行