• 大小: 1.46MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-10-03
  • 语言: Java
  • 标签:

资源简介

Java课设mysql简易考试系统

资源截图

代码片段和文件信息

package com.wuzy.elts.entity;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.wuzy.elts.util.Config;
/**
 * 实体数据访问类
 * 是数据访问层,负责将磁盘文件数据读取到内存集合中
 * 当前类包含两大功能:
 * 1) 用户信息读取,和查询
 * 2) 题库信息读取,和查询
 */
public class EntityContext implements Serializable {
  private Config config;
  
  public EntityContext(Config config) {
    this.config = config;
    //UserFile QuestionFile 是散列表的key,必须包含在
    // 配置文件中
    loadQuestions(config.getString(“QuestionFile“));
  }
  
  /** 全部试题的集合 key是级别(level) 
   * value是 对于level下的所有试题 线性集合 */
  private Map> questions = 
    new HashMap>();

  public List findQuestions(int level){
    return new ArrayList(questions.get(level));
  }
  
  /** 解析试题文件 到questions集合中 */
  private void loadQuestions(String file){
    try {
      BufferedReader in = 
        new BufferedReader(
            new InputStreamReader(
                new BufferedInputStream(
                    new FileInputStream(file)) 
                    “gbk“));
      String str;
      while((str = in.readLine())!=null){
        str = str.trim();
        if(str.equals(““) || str.startsWith(“#“)){
          continue;
        }
        //解析流信息到 Question 对象 
        Question q = parseQuestion(str 
            in.readLine() 
            in.readLine() 
            in.readLine() 
            in.readLine() 
            in.readLine());
        addQuestion(q); //添加到集合
      }
      in.close(); 
    } catch (Exception e) {
      e.printStackTrace();
      throw new RuntimeException(e);
    }
  }

  private void addQuestion(Question q) {
    List list = 
      questions.get(q.getLevel());
    if(list==null){
      list = new ArrayList();
      questions.put(q.getLevel() list);
    }
    list.add(q);
  }
/*
@answer=2/3score=5level=5
指出下面语句没有编译错误的是:
long n = 999999999999;
int n = 999999999999L;
long n = 999999999999L; 
double n = 999999999999;
 */
  private Question parseQuestion(
      String fields String title 
      String opt0 String opt1 String opt2 String opt3) 
    throws IOException{
    String[] data = fields.split(“[@][a-z]+=“);
    //fields: @answer=2/3score=5level=5
    // 以上字符串 切为: 如下结果
    // data:{“““2/3““5““5“}
    Question q = new Question();
    q.setAnswers(parseAnswer(data[1]));
    q.setScore(Integer.parseInt(data[2]));   
    q.setLevel(Integer.parseInt(data[3]));
    q.settitle(title);//读取题干
    List options = new ArrayList();
    options.add(opt0);//连续读取4个选项
    options.add(opt1);
    options.add(opt2);
    options.add(opt3);
    q.setOptions(options);
    q.setType(q.getAnsw

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-05-19 17:19  简易考试系统\
     文件         503  2013-06-15 14:10  简易考试系统\.classpath
     文件         394  2013-06-17 18:53  简易考试系统\.project
     目录           0  2017-05-19 17:19  简易考试系统\.settings\
     文件          97  2013-06-15 14:12  简易考试系统\.settings\org.eclipse.core.resources.prefs
     目录           0  2017-06-01 16:22  简易考试系统\bin\
     目录           0  2017-06-01 16:22  简易考试系统\bin\com\
     目录           0  2017-06-01 16:22  简易考试系统\bin\com\wuzy\
     目录           0  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\
     目录           0  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\entity\
     文件        4704  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\entity\EntityContext.class
     文件        1979  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\entity\ExamInfo.class
     文件        3603  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\entity\Question.class
     文件        1979  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\entity\QuestionInfo.class
     文件        1870  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\entity\User.class
     目录           0  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\service\
     文件        4222  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\service\ExamService.class
     文件        2012  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\service\UserService.class
     目录           0  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\
     文件         998  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\ClientContext$1.class
     文件         751  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\ClientContext$2.class
     文件        6151  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\ClientContext.class
     文件         811  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Examframe$1.class
     文件         872  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Examframe$2.class
     文件         872  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Examframe$3.class
     文件         872  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Examframe$4.class
     文件         612  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Examframe$Option.class
     文件        7356  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Examframe.class
     文件         848  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Loginframe$1.class
     文件         882  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Loginframe$2.class
     文件         911  2017-06-01 16:22  简易考试系统\bin\com\wuzy\elts\ui\Loginframe$3.class
............此处省略55个文件信息

评论

共有 条评论

相关资源