在线考试系统JAVA_第1页
在线考试系统JAVA_第2页
在线考试系统JAVA_第3页
在线考试系统JAVA_第4页
在线考试系统JAVA_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题库管理试卷管题库管理试卷管理考试管理评卷管理成绩管理用户管理权限管理信息管理2、实验内容3、实验过程在线考试系统品文档综合综合组卷人工组卷随机组卷试卷信试卷管理科科目维护范围维护题型维护题库管理试题的数据备份与还原。档考试管理考生信考试信考试管理考生信考试信评卷管理分配评用户管理用户基权限管理权限信成绩管理信息管信息管理信息基用户分配权限:对未分配权限的用户进行权限的分配,即对分配权删、改、查操作,而留言是由前台的用户(学生)或游客录入的,我2实用精品文档考生前台用户管理成绩管理评卷管理考试管理试卷管理题库管理在线考试系统后台管理权限管理3.3数据库设计eecttable (question_blanc_table)、单选题表档(question_selectone_table)、多选题表 (question_selectMany_tabel)一题多问表(question_askMany_table)、判断题表(question_judge_table)等 试题范围相对应)、试卷所属科目(与试题科目相对应)、试题标题卷人(有权限的用户)进行手工评卷,本表用来存储评卷人评卷的一ablee精品文档4、关键代码及其分析4.1----------------ServerGui.java------------------publicvoid||password==null){ctionEventusername=e){fegetSourcepassword=log){//booleann}Stringusername=JOptionPane.showInputDialog(adminCheck(username,this,"请输入用户名",password);//验证管理员输入用户名",if(tf==true){UESTIONMESSAGEeshowMessageDiStringpassword=aneshowInputDialogNFORMATIONMUESTIONMESSAGEue;}else{owMessageDianeERRORMESSAGE}==setCount){userCount=howInputDialogthis,"请输入本次考试的人数==startSer){&&setcount==true){服务器已启动\n预设考试人数+}else{owMessageDialog(this,"你还没有设置考试NFORMATIONM用精品文档}}if(start====userButton){{{linkArea.append(ServerManuserArea.append(ServerManagerager}else{owMessageDialog(this,"服务器还没有启动aappendServerManrverManager}else{NFORMATIONM}publicvoidadminCheck(Strings1,StringConnectBeancb=new用精品文档eancbopenConnection()){}----------Server_login.java-----------------户登陆的类publicvoidrun(){=try{接收考试号和密码,然后分别取出newStringTokenizers);tlnuserntrtlnpasswr}{st.hasMoreTokens()){=}//读取数据库里的用户try{eancbopenConnection()){}nt("selectflagfromstuinfowheresno='"rrwhiler.next()){mrgetString"flag");}{out.writeUTF("用}else{nsname,spassfromstuinfowheresno='"+str1+ResultSetrs=while(rs.next()){==Stringsname==StringspassStringsql1=wheresno='"+str1+"'";PreparedStatementps=ments+",dbputeUpdate}//验证用户密码,strequalsdbp.trim())){}else{TF}-----------ServerManager.java----------------publicServerManager(){try{ss=newortpublicvoidrun(){rtnstatusServerSocketss1Socketyou=IOExceptione){}while(true){try{you=IOExceptione){userstatus="user'sIP"+resswuserstatus}if(you!=null){ucount="counter<Maxcount){//第一oustart}else{resswuserstatus//中断Maxcounteryouportt//启动一个响应客户端Threadtd2=newThread("two"){publicvoidrun(){catchIOExceptione){}while(true){Socketyou2=try{you2=ServerSocketss2}catchIOExceptione){try{ss=new}if(you2!=null){s="user'sIP"+etAddress+"ServerSocketss3=icvoidrunserstatusthread3wuserstatusestyoustart//启动一个接收用户答Threadtd3=newThread("three"){try{ss=newtportnkstatuslistenerthetportsIOExceptione){}while(true){Socketyou3=try{you3=(IOExceptione){}if(you3!=null){userstatus="user'sIP"+ress+"wuserstatus//第3个oreyoustart}}}t//启动一个用户查询的线程Threadtd4=newThread("four"){ServerSocketss4=publicvoidrun(){serstatus="thread4Socketyou4=try{you4=try{ss=newport}IOExceptione){}nkstatuslistenerthetportnull){suserstatus="user'sIP"+}catchyou4.getInetAddress()IOExceptione+"}wuserstatuswhile(true){-------Server_readTest.java----------------publicvoidrun(){题Stringsql2;//定义查句Stringdbt="以下为试试题try{络连接部分eancbopenConnection()){}sql"select*ntlnts接部分//查询客户端所选试menResultSetrs=while(rs.next()){dbt+=etString}tlndbtintlntcountTFIntegertoStuntecount{nnot{到客户端lnnotdclientselect}品文档-------/Server_readScore.java------------------Socketsocket){----------------------创建网络连接------------------------------//publicvoidrun(){-------------------------接收用户提交的答案---------------------------//try{==lnreadke{}StringTokenizerstc=newStringTokenizer(readkey,//客户传来答案的第一个字符为用户名,第二个字符品文档为考试科目----------------------------stc.nextToken().trim();-------------------------//==}//第二个字符为考试科目==try{eancbopenConnection()){}str;}//------------------------判断分数----------------------------//for(inti=0;i品文档<Integer.parseInt(str4);i++)out.close();}catch(IOExceptione)swer[i])){unt}}System.out.println("用try{TFIntegertoStt{}------------------------将分数存到数据库----------------------------try{eancbopenConnection()){品文档}atementps=PreparedStatementst{chIntetIntuno}ecuteUpdate}-------------------Server.java----------------------publicstaticvoidmainStringargs[]){r}品文档}--------------TestGui.java-------------------publicvoidfegetSourcectionEventallIPe){品文档{try{}catchExceptionee{}}{//建立网络连接socket=newtinnewputStreamsocketgetInmout=newtputStreamsocketgetOtStreamn{FieldsetText}品文档try{socketnewtputStreamsocketgetInreamout=newtputStreamsocketgetOtStreamrstuinfo.setText("请求信息{FieldsetTextstuinfo.setText("你呼叫没}成功{try{queryInfo=in.readUTF();果{{品文档otherinfo.setText("数据传}}beginExe){//生成试题if(mgr.equals("英语")){//选择elseif(mgr.equals("数学"))}mgr;startTest{//开始考试readNext//读下一题目tempStr1=FieldgetTexttrimuanswer+=tempStr1品文档if(n<=enu-1){lntempStateFieldsetText}try{}catchExceptionee{}try{socketnewtputStreamsocketgetInStreamout=newtputStreamsocketgetOtStreamout.writeUTF(user+","+sub+","+uanswer+","+品文档=={//=={看分数publicvoidrun(){catchUnknownHostExceptione{e1){}whi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论