当前位置:首页 > 完整的在线考试系统论文 - 图文
重庆科技学院本科毕业设计 3 系统设计
connectionconn = DriverManager.getConnection(\//获得数据库连接
}catch(Exception e)
{
e.printStackTrace(); out.print(e.toString()); }
return conn; }
//关闭数据库连接
public void CloseDB(Connection conn,Statement sm,ResultSet rs) {
try {
if(rs!=null) {
rs.close(); }
}catch (Exception e) {
e.printStackTrace();
out.print(\数据库关闭失败!\ }finally {
try{
if(sm!=null) {
sm.close(); }
}catch(Exception e) {
e.printStackTrace();
out.print(\数据库关闭失败!\ }finally {
try{
if(conn!=null) {
conn.close(); }
}catch(Exception e) {
e.printStackTrace();
out.print(\数据库关闭失败!\
13
重庆科技学院本科毕业设计 3 系统设计
} } } }
3.4 详细设计
3.4.1公共类设计
1.Domain类设计
由于数据库使用的类系统模型,而java数据为对象模型,使得其模型不匹配。为了方便关系模型和对象模型间的转换,建应的Domain类,即数据库中每个表对应一个类,表中类属性对应表的各属性,再为各个属性设计一个读方法(get)和一个写方法(set)如用户类:
public class User {
private String id=\ private String name=\ private int type=1;
private String password=\ private String sex = \ public String getSex();
public void setSex(String sex) ; public String getPassword();
public void setPassword(String password); public String getId();
public void setId(String id); public String getName();
public void setName(String name); public int getType();
public void setType(int type); }
表和类的对应关系如下:
用户表(UserInfo)——用户类(User) 用户标记表(userflag)——用户标记类(UserFlag) 考题表(Question)——考题类(Question) 试卷表(test)——试卷类(Test)
试卷设置表(test_set)——试卷设置类(Test) 成绩表(record)——成绩类(Record)
试卷考题类(TestQuestion)——试卷表和考题表联合查询视图
2.公具类设计
14
重庆科技学院本科毕业设计 3 系统设计
根据系统设计需求,设计如下工具类:
数据库连接工具类,主要提供连接数据操作等相关方法
public class DBAccess { //得到数据库连接
public Connection getConnection() //并闭数据库连接
public void CloseDB(Connection conn,Statement sm,ResultSet rs) }
用户操作相关类,主要提供对用户表操作的相关类
public class UserUtil {
//根据用户编号得到用户信息
public User getUser(String Uid)
//验证登陆信息,根据用户名、密码和用户类型
public boolean checkUser(String userName,String password,int type) 用户信息
public boolean motifyUser(User user) //添加用户信息
public boolean insertUser(User user) //修改密码
public boolean motifyPassword(String Uid,String password) //得到指定页的用户
public ArrayList getAllUser(int pageSize,int current) //得到用户数量
public int getCount() //删除用户信息
public boolean deleteUser(String Uid) }
用户标记工具类,主要提供对用户标记表的相关操作方法
public class UserFlagUtil { //得到交卷信息
public int getFlag(String Uid,String course) //设置交卷信息
public boolean setFlag(String Uid,String course) }
考题工具类,主要提供对考题表的相关操作方法
Public class QuestionUtil{ ///得到选择题的方法
public ArrayList getQuestion(String course,int count,int type) //得到数据库中题目数量
public int getCount(int type,String course) //得到数据库中题目数量 public int getCount() //通过考题编号得到考题
public Question getQuestionById(int Qid)
15
//修改
重庆科技学院本科毕业设计 3 系统设计 //得到指定页的试题目信息
public ArrayList getAllQuestion(int pageSize,int current) //添加试题信息
public boolean insertQuestioin(Question ques) //修改试题信息
public boolean updateQuestion(Question ques) //删除试题信息
public boolean deleteTest(int Qid) //获取科目
public ArrayList getCourse() }
试卷工具类,主要提供对试卷表的相关操作方法
public class TestUtil { //添加试卷信息
public boolean insertTest(ArrayList al) //考生的名字和学号
public ArrayList getStudent(String course) //获得试卷库中相应题型的题
public ArrayList getTest(String Uid,String course,int type) //修改试卷库中相应试题的分数
public boolean updateTest(String Uid,int Qid,float score) }
考试设置工具类,主要提供对考试设置表的相关操作方法
public class TestSetUtil {
//根据课程名称得到考试设置信息
public TestSet getTestSet(String course) //计算考题总分
public int getTotalScore(TestSet ts) //获得总记录
public int getCount() //得到指定页的考试信息
public ArrayList getAllTestSet(int pageSize,int current) //添加或修改考试设置,flag=0为添加,flag=1为修改
public boolean insertOrUpdate(TestSet ts,int flag) //删除考试设置信息
public boolean deleteTest(String course) }
成绩工具类,主要提供对成绩表的相关操作方法
public class RecordUtil {
public DBAccess db = new DBAccess(); //获取考生指定课程的得分信息
public Record getRecord(String Uid,String course) //判断学生成绩是否存在
public boolean getUser(String Uid,String course)
16
共分享92篇相关文档