Java实现在线测评考试系统代码-创新互联

这篇文章主要为大家详细介绍了Java实现在线测评考试系统的方法,文中示例代码介绍的非常详细,零基础也能参考此文章,感兴趣的小伙伴们可以参考一下。

创新互联公司从2013年创立,公司以做网站、网站建设、系统开发、网络推广、文化传媒、企业宣传、平面广告设计等为主要业务,适用行业近百种。服务企业客户1000多家,涉及国内多个省份客户。拥有多年网站建设开发经验。为企业提供专业的网站建设、创意设计、宣传推广等服务。 通过专业的设计、独特的风格,为不同客户提供各种风格的特色服务。

代码展示


package service;

import java.util.ArrayList;

import java.util.List;

import java.util.Random;

import util.Config;
import util.Md5Utils;
import entity.EntityContext;
import entity.ExamInfo;
import entity.Question;
import entity.QuestionInfo;
import entity.User;
import exception.IdOrPasswordException;

public class ExamServiceImpl implements ExamService {
private EntityContext entityContext;
private List paper = new ArrayList();
private Config config;
private User loginUser;

public List getPaper() {

  return paper; } public void setPaper(List paper) {   this.paper = paper; } public ExamServiceImpl(EntityContext entityContext, Config config) {   super();   this.entityContext = entityContext;   this.config = config; } public ExamServiceImpl(EntityContext entityContext) {   super();   this.entityContext = entityContext; } @Override public User login(int id, String password) throws IdOrPasswordException {   loginUser = entityContext.findUserById(id);   if (loginUser == null) {     throw new IdOrPasswordException("鏃犳鐢ㄦ埛!");   }   if (loginUser.getPassword().equals(Md5Utils.md5(password))) {     return loginUser;   }   throw new IdOrPasswordException("瀵嗙爜閿欒!"); } @Override public ExamInfo start() {   buildPaper();   ExamInfo examInfo = new ExamInfo();   examInfo.setUser(loginUser);   examInfo.setTimeLimit(config.getInt("TimeLimit"));   examInfo.setExamTitle(config.getString("PaperTitle"));   examInfo.setQuestionNumber(config.getInt("QuestionNumber"));   return examInfo; } private void buildPaper() {   int i = 0;   Random random = new Random();   for (int level = Question.LEVEL1; level <= Question.LEVEL10; level++) {     List list = entityContext.getQuestions(level);     Question q1 = list.remove(random.nextInt(list.size()));     Question q2 = list.remove(random.nextInt(list.size()));     paper.add(new QuestionInfo(++i, q1));     paper.add(new QuestionInfo(++i, q2));   } } @Override public QuestionInfo getQuestionInfo(int index) {   return paper.get(index - 1); } @Override public void sendUserAnswers(int questionIndex, List answers) {   QuestionInfo questionInfo = paper.get(questionIndex - 1);   questionInfo.setUserAnswers(new ArrayList(answers)); } @Override public int getTotalSocre() {   int score = 0;   for (QuestionInfo questionInfo : paper) {     if (questionInfo.getUserAnswers().equals(         questionInfo.getQuestion().getAnswers())) {       score += questionInfo.getQuestion().getScore();     }   }   return score; }}

看完这篇文章,你们学会Java实现在线测评考试系统的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:Java实现在线测评考试系统代码-创新互联
文章出自:http://myzitong.com/article/gcpjd.html