Student Service Implementation for Exam System
package com.it.service.impl;
import com.it.domain.ExamQuestion; import com.it.domain.Result; import com.it.domain.Student; import com.it.operation.QuestionOperation; import com.it.operation.ResultOperation; import com.it.operation.StudentOperation; import com.it.service.StudentService;
import java.util.Collections; import java.util.Date; import java.util.List; import java.util.Scanner;
/**
-
学生实现类 */ public class StudentServiceImpl implements StudentService {
private final Scanner sc = new Scanner(System.in); private final StudentOperation studentDao = new StudentOperation(); private final QuestionOperation questionDao = new QuestionOperation(); private final ResultOperation resultDao = new ResultOperation();
/中文学生注册/ @Override public void chineseStudentRegister() { System.out.println('注册界面'); System.out.println('请输入你的学号:'); String id = sc.nextLine(); System.out.println('请输入你的姓名:'); String name = sc.nextLine(); System.out.println('请输入你的电话:'); String phone = sc.nextLine(); System.out.println('请输入你的密码:'); String password = sc.nextLine();
Student student = new Student(); student.setSno(Integer.parseInt(id)); student.setPassword(password); student.setPhone(phone); student.setSname(name); int i = studentDao.insert(student); System.out.println(i > 0 ? '注册成功!' : '注册失败!');}
/中文登录/ @Override public void chineseStudentLogin() { System.out.println('学生登录'); System.out.println('请输入你的学号:'); String id = sc.nextLine(); System.out.println('请输入你的密码:'); String password = sc.nextLine(); System.out.println('您确定现在登录吗?'); System.out.println('1.是'); System.out.println('2.否'); System.out.println('3.返回主页'); String isNow = sc.nextLine(); switch (isNow) { case '1': break; case '2': return; case '3': return; default: System.out.println('没有这个选项!'); return; }
Student student = new Student(); student.setSno(Integer.parseInt(id)); student.setPassword(password); Student one = studentDao.getOne(student); if (one == null) { System.out.println('学生信息不存在!请检查您的学号或密码'); return; } //学生登录界面,选择是否考试 loop: while (true) { System.out.println('学生界面'); System.out.println('1.开始考试'); System.out.println('2.退出'); String choose = sc.nextLine(); switch (choose) { case '1': chineseExam(); break; case '2': break loop; default: System.out.println('没有这个选项!'); break; } }}
/英文学生注册/ @Override public void englishStudentRegister() { System.out.println('Welcome to register'); System.out.println('Please enter your student id:'); String id = sc.nextLine(); System.out.println('Please enter your name:'); String name = sc.nextLine(); System.out.println('Please enter your phone number:'); String phone = sc.nextLine(); System.out.println('Please enter your password:'); String password = sc.nextLine();
Student student = new Student(); student.setSno(Integer.parseInt(id)); student.setPassword(password); student.setPhone(phone); student.setSname(name); int i = studentDao.insert(student); System.out.println(i > 0 ? 'registe Successful!' : 'registe Error');}
/英文学生登录/ @Override public void englishStudentLogin() { System.out.println('Student login'); System.out.println('Please enter your student id:'); String id = sc.nextLine(); System.out.println('Please enter your password:'); String password = sc.nextLine(); System.out.println('Are you sure login now?'); System.out.println('1.Yes'); System.out.println('2.No'); System.out.println('3.Back to the homePage'); String isNow = sc.nextLine(); switch (isNow) { case '1': break; case '2': return; case '3': return; default: System.out.println('No choose!'); return; }
Student student = new Student(); student.setSno(Integer.parseInt(id)); student.setPassword(password); Student one = studentDao.getOne(student); if (one == null) { System.out.println('No student!Please check your id or password'); return; } //学生登录界面,选择是否考试 loop: while (true) { System.out.println('Student board'); System.out.println('1.Start exam'); System.out.println('2.Quit'); String choose = sc.nextLine(); switch (choose) { case '1': englishExam(); break; case '2': break loop; default: System.out.println('No choose!'); break; } }}
/英文考试菜单/ @Override public void englishExam() { System.out.println('Exam Form'); System.out.println('Please enter your student id:'); String id = sc.nextLine(); System.out.println('Please enter your name:'); String name = sc.nextLine(); Student student = studentDao.getByIdAndName(Integer.parseInt(id), name); if (student==null){ System.out.println('No Student!Please check your id or name'); return; } System.out.println('Please choose a course:'); System.out.println('1.Java'); System.out.println('2.MySQL'); String course = sc.nextLine(); String courseName; switch (course) { case '1': courseName = 'Java'; break; case '2': courseName = 'MySQL'; break; default: System.out.println('No choose!'); return; }
System.out.println('Do you want to start now?'); System.out.println('1.Start'); System.out.println('2.quit'); String choose = sc.nextLine(); switch (choose) { case '1': double core = startEnglishExam(courseName); Result result = new Result(); result.setSno(Integer.parseInt(id)); result.setSname(name); result.setCourse(courseName); result.setScore(core); result.setDate(new Date()); int i = resultDao.insert(result); System.out.println(i>0?'submit success!':'submit error!'); break; case '2': return; default: System.out.println('No choose!'); break; }}
/中文考试菜单/ @Override public void chineseExam() { System.out.println('考试表单'); System.out.println('请输入你的学号:'); String id = sc.nextLine(); System.out.println('请输入你的姓名:'); String name = sc.nextLine(); Student student = studentDao.getByIdAndName(Integer.parseInt(id), name); if (student==null){ System.out.println('学生信息不存在!请检查你的学号或姓名'); return; } System.out.println('请选择一个课程:'); System.out.println('1.Java'); System.out.println('2.MySQL'); String course = sc.nextLine(); String courseName; switch (course) { case '1': courseName = 'Java'; break; case '2': courseName = 'MySQL'; break; default: System.out.println('没有这个选项!'); return; } System.out.println('你想要现在开始考试吗?'); System.out.println('1.开始'); System.out.println('2.退出'); String choose = sc.nextLine();
switch (choose) { case '1': double core = startChineseExam(courseName); Result result = new Result(); result.setSno(Integer.parseInt(id)); result.setSname(name); result.setCourse(courseName); result.setScore(core); result.setDate(new Date()); int i = resultDao.insert(result); System.out.println(i>0?'提交成功!':'提交失败!'); break; case '2': return; default: System.out.println('没有这个选项!'); break; }}
/中文答题界面/ @Override public double startChineseExam(String courseName) { double core = 0; String answer; List
questions = questionDao.list(courseName); Collections.shuffle(questions); int len = 10; if (questions.size()<10){ len = questions.size(); } for (int i = 0; i < len; i++) { ExamQuestion question = questions.get(i); System.out.println(question.getQuestionName()); System.out.println('A.' + question.getOption1()); System.out.println('B.' + question.getOption2()); System.out.println('C.' + question.getOption3()); System.out.println('D.' + question.getOption4()); System.out.println('请输入你的选择:'); String choose = sc.nextLine(); switch (choose) { case 'A': answer = question.getOption1(); break; case 'a': answer = question.getOption1(); break; case 'B': answer = question.getOption2(); break; case 'b': answer = question.getOption2(); break; case 'C': answer = question.getOption3(); break; case 'c': answer = question.getOption3(); break; case 'D': answer = question.getOption4(); break; case 'd': answer = question.getOption4(); break; default: System.out.println('没有这个选项!'); answer = ''; break; } if (question.getCorrectAnswer().equals(answer)){ core += 10; } System.out.println('你想要继续下一题吗?'); System.out.println('1.继续'); System.out.println('2.交卷'); String isContinue = sc.nextLine(); switch (isContinue){ case '1': if (i==len-1){ System.out.println('这已经是最后一个问题了'); } break; case '2': return core; default: System.out.println('没有这个选项!'); break; } } return core;}
/英文答题界面/ @Override public double startEnglishExam(String courseName) { double core = 0; String answer; List
questions = questionDao.list(courseName); Collections.shuffle(questions); int len = 10; if (questions.size()<10){ len = questions.size(); } for (int i = 0; i < len; i++) { ExamQuestion ExamQuestion = questions.get(i); System.out.println(ExamQuestion.getQuestionName()); System.out.println('A.' + ExamQuestion.getOption1()); System.out.println('B.' + ExamQuestion.getOption2()); System.out.println('C.' + ExamQuestion.getOption3()); System.out.println('D.' + ExamQuestion.getOption4()); System.out.println('Please enter your choose:'); String choose = sc.nextLine(); switch (choose) { case 'A': answer = ExamQuestion.getOption1(); break; case 'a': answer = ExamQuestion.getOption1(); break; case 'B': answer = ExamQuestion.getOption2(); break; case 'b': answer = ExamQuestion.getOption2(); break; case 'C': answer = ExamQuestion.getOption3(); break; case 'c': answer = ExamQuestion.getOption3(); break; case 'D': answer = ExamQuestion.getOption4(); break; case 'd': answer = ExamQuestion.getOption4(); break; default: System.out.println('No choose!'); answer = ''; break; } if (ExamQuestion.getCorrectAnswer().equals(answer)){ core += 10; } System.out.println('Do you want to next now?'); System.out.println('1.next'); System.out.println('2.Finish'); String isContinue = sc.nextLine(); switch (isContinue){ case '1': if (i==len-1){ System.out.println('The question is last'); } break; case '2': return core; default: System.out.println('No choose!'); break; } } return core;}
}
原文地址: https://www.cveoy.top/t/topic/f0U5 著作权归作者所有。请勿转载和采集!