欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    JAVA课程设计报告(标准化考试系统).doc

    • 资源ID:4843377       资源大小:507.37KB        全文页数:33页
    • 资源格式: DOC        下载积分:1金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要1金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    JAVA课程设计报告(标准化考试系统).doc

    1、Java语言与面向对象技术课程设计课程设计报告( 2012- 2013年度第2学期)标准化考试系统专业计算机科学与技术学生姓名班级学号指导教师完成日期2013.7目 录目 录21 概 述31.1 课程设计目的31.2 课程设计内容与要求32 系统需求分析42.1 系统目标42.2 主体功能42.3 开发环境43 系统总体设计43.1 系统的功能模块划分43.2 系统流程图54 系统详细设计64.1 客户端模块设计64.1.1 用户登录模块设计(ClientLogin类)64.1.2 选择试卷模块设计(GetTestFile类)114.1.3 回答试卷查询模块设计(ClientTestArea类

    2、)154.2 服务器端模块设计234.2.1 Server类234.2.2 ServerThread类254.2.3 ReadTestquestion类295 代码调试306 软件发布317 小结32参考文献33标准化考试系统1 概 述1.1 课程设计目的1、加深对Java语言与面向对象技术课程基础知识的理解,掌握Java语言面向对象程序设计的开发方法和步骤;2、进一步理解面向对象程序设计的思想和方法,利用Java语言进行程序设计的能力;3、课程设计将课本上的理论知识和实际应用相结合,锻炼学生发现问题、分析问题和解决问题的能力。加强学生研发、编写、调试程序的能力;4、培养学生在项目开发中团队合

    3、作精神、创新意识及能力;5、提高学生科技论文写作能力,规范完成课程设计报告。1.2 课程设计内容与要求设计C/S模式的标准化考试系统,即客户端和服务器端都是Java应用程序,具体要求如下:(1)用户单击选项卡中的“登录”将出现登录界面。用户在登录界面输入学号、姓名以及服务器的IP,并请求服务器建立套接字链接。用户登录的目的是为了将自己的基本信息存放到服务器上,以便服务器记录用户的考试成绩。因此,用户和服务器建立连接后,服务器将创建一个和用户相关的一个文件,该文件的名字由用户的学号、姓名以及用户所在客户端机器的IP所组成。(2)单击端选项卡中的“选择试卷”将出现选择试卷界面。如果用户成功登录,即

    4、和服务器建立连接并在服务器端创建了和其相关的文件,那么,用户再选择试卷界面可以将服务器上的试卷文件的名字存放到客户端界面中的下拉式列表中,然后再在下拉列表中选择一个试卷文件的名字提交给服务器。(3)单击端选项卡中的“答卷”将出现答卷界面。如果用户成功登录,并且用户通过“选择试卷”界面选择了一套试卷,那么用户在答卷界面可以从服务器读入所选试卷的内容,而且在“答卷”界面可以提交自己的答案给服务器、服务器将用户提交的答案存入用户登录时服务器所创建的和该用户相关的文件中。提交答案后,在“答卷”界面可以查询分数。2 系统需求分析2.1 系统目标通过本系统能够实现用户登录,选择试卷,完成试卷,查询分数等功

    5、能。2.2 主体功能A.C/S模式,即客户端与服务器端都是Java应用程序;B.输入服务器IP地址,连接服务器功能;C.登录验证功能;D.学生可以选择所要做的试题;E.开始考试;F.完成考试后,学生可以查看自己的分数、试题、正确答案、分值以及自己所选 择的答案;2.3 开发环境MyEclipse3 系统总体设计3.1 系统的功能模块划分本系统主要有以下几个功能模块:用户登录,选择试卷,完成试卷,查询分数等。标准化考试系统客户端窗口完成试卷用户登录选择试卷提交试卷查询分数退出系统3.2 系统流程图开始连接成功连接服务器输入信息显示登录成功NY选择试卷显示试卷回答试卷提交试卷查看分数退出4 系统详

    6、细设计4.1 客户端模块设计4.1.1 用户登录模块设计(ClientLogin类) 1、效果图 2、类的主要成员变量和方法1)成员变量a、verfyMess是String对象,该字符串的前缀为“学生”,后缀是用户输入学号、姓名以及客户端的IP。用户登录时需将verifyMess提交给服务器。b、inputNumber、inputName和inputServerIP是JtextField创建的文本框,用于用户输入学号、姓名和服务器的IP.。c、hintMess是JLabel创建的标签,用于显示某些提示信息。d、startCon是JButton创建的对象,该按钮将当前容器注册为自己的Action

    7、Event事件监视器。 2)方法a、ClientLogin()是构造方法,用来创建clientLogin类。b、actionPerformed(ActionEvent)方法是ClientLogin类实现ActionListener接口中的方法。ClientLogin创建的容器startCon按钮的ActionEvent事件监视器,当用户单击该按钮时,容器将执行actionPerformed(ActionEvent)方法进行相应的操作。3、主要程序代码import java.awt.*;import java.awt.event.*;import java.io.*;import .*;impo

    8、rt javax.swing.*;public class ClientLogin extends JPanel implements ActionListener String verifyMess; JTextField inputNumber,inputName,inputServerIP; JLabel hintMess; JButton startCon; String number,name,IP; public ClientLogin() inputNumber=new JTextField(10); inputName =new JTextField(10); hintMess

    9、=new JLabel(请输入学号、姓名和服务器的IP,JLabel.CENTER); hintMess.setFont(new Font(隶书,Font.BOLD,18); inputServerIP=new JTextField(10); startCon=new JButton(提交); startCon.addActionListener(this); Box box1=Box.createHorizontalBox(); box1.add(new JLabel(输入学号:,JLabel.CENTER); box1.add(inputNumber); Box box2=Box.crea

    10、teHorizontalBox(); box2.add(new JLabel(输入姓名:,JLabel.CENTER); box2.add(inputName); Box box3=Box.createHorizontalBox(); box3.add(new JLabel(输入IP:); box3.add(inputServerIP); Box box4=Box.createHorizontalBox(); box4.add(new JLabel(单击提交按钮,JLabel.CENTER); box4.add(startCon); Box boxH=Box.createVerticalBox

    11、(); boxH.add(box1); boxH.add(box2); boxH.add(box3); boxH.add(box4); JPanel pCenter=new JPanel(); pCenter.add(boxH); pCenter.setBackground(new Color(210,210,110); setLayout(new BorderLayout(); add(pCenter,BorderLayout.CENTER); JPanel pNorth=new JPanel(); pNorth.setBackground(Color.green); pNorth.add(

    12、hintMess); add(pNorth,BorderLayout.NORTH); public void actionPerformed(ActionEvent e) if(e.getSource()=startCon) number=inputNumber.getText().trim(); name=inputName.getText().trim(); if(number.length()0&name.length()0) IP=inputServerIP.getText().trim(); try LoginThread thread=new LoginThread(hintMes

    13、s); if(!(thread.isAlive() thread=new LoginThread(hintMess); thread.makeConnection(number,name,IP); thread.start(); catch (Exception ee) hintMess.setText(无法连接+ee); else JOptionPane.showMessageDialog(this,必须输入学号和姓名,警告, JOptionPane.WARNING_MESSAGE); class LoginThread extends Thread Socket socket; InetS

    14、ocketAddress socketAddress; DataInputStream in; DataOutputStream out; JLabel hintMess; LoginThread(JLabel hint) hintMess=hint; public void makeConnection(String number,String name,String IP) throws IOException InetAddress address=InetAddress.getByName(IP); socketAddress=new InetSocketAddress(address

    15、,6666); socket=new Socket(); socket.connect(socketAddress); in=new DataInputStream(socket.getInputStream(); out=new DataOutputStream(socket.getOutputStream(); out.writeUTF(学生+number+name); public void run() String s=null; while(true) try s=in.readUTF(); if(s.startsWith(成功登录:) String verifyMess=s.sub

    16、string(s.indexOf(:)+1); GetTestFile.setVerifyMess(verifyMess); ClientTestArea.setVerifyMess(verifyMess); GetTestFile.setSocketAddress(socketAddress); ClientTestArea.setSocketAddress(socketAddress); hintMess.setText(s); String tishi=成功登录,请单击左侧的选择试卷界面; JOptionPane.showMessageDialog(null,tishi,操作提示, JO

    17、ptionPane.PLAIN_MESSAGE); if(socket.isClosed() return; if(s.startsWith(已经成功登录了) hintMess.setText(s); String tishi=已经成功登录了,请单击左侧的选择试卷界面; JOptionPane.showMessageDialog(null,tishi,操作提示, JOptionPane.PLAIN_MESSAGE); if(socket.isClosed() return; catch (Exception ee) hintMess.setText(服务器暂时关闭了,稍后再请求连接); ret

    18、urn; 4.1.2 选择试卷模块设计(GetTestFile类)1、效果图2、类的主要成员变量和方法 1)成员变量 a、hintMess是JLabel创建的标签,用于显示某些提示信息。b、list是JComboBox创建的下拉列表,用于显示从服务器得到的试卷文件的名字。c、getTestFile和submit是JButton创建的对象,其上的名字分别为“列出试卷的名字”和“提交”,该两个按钮都将当前容器注册为自己的ActionEvent事件监视器。 2)方法a、GetTestFile()是构造方法,用来创建getTestFile类。b、actionPerformed(ActionEvent)

    19、方法是GetTestFile类实现ActionListener接口中的方法。GetTestFile创建的容器getTestFile和submit按钮的ActionEvent事件监视器,当用户单击getTestFile和submit按钮按钮时,容器都将执行actionPerformed(ActionEvent)方法进行相应的操作。3、主要程序代码import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.io.*;import .*;public class GetTestFile extends JPan

    20、el implements ActionListener,Runnable static String verifyMess; static InetSocketAddress socketAddress; String fileName; JLabel hintMess; JButton getTestFile,submit; JComboBox list; Socket socket; DataInputStream in; DataOutputStream out; Thread thread; int n=0; public GetTestFile() hintMess=new JLa

    21、bel(单击列出试卷名字按纽从服务器得到试卷的名字); hintMess.setBackground(Color.green); getTestFile=new JButton(列出试卷名字); getTestFile.setBackground(Color.green); submit=new JButton(提交); submit.setBackground(Color.orange); getTestFile.addActionListener(this); submit.addActionListener(this); list=new JComboBox(); Box box1=Bo

    22、x.createHorizontalBox(); box1.add(new JLabel(单击列出按纽:,JLabel.CENTER); box1.add(getTestFile); Box box2=Box.createHorizontalBox(); box2.add(new JLabel(选择试卷:,JLabel.CENTER); box2.add(list); box2.add(submit); Box boxH=Box.createVerticalBox(); boxH.add(box1); boxH.add(box2); thread=new Thread(this); JPane

    23、l pCenter=new JPanel(); pCenter.add(boxH); setLayout(new BorderLayout(); pCenter.setBackground(Color.pink); add(pCenter,BorderLayout.CENTER); JPanel pNorth=new JPanel(); pNorth.add(hintMess); add(pNorth,BorderLayout.NORTH); public static void setVerifyMess(String mess) verifyMess=mess; public static

    24、 void setSocketAddress(InetSocketAddress address) socketAddress=address; public void actionPerformed(ActionEvent e) if(e.getSource()=getTestFile) list.removeAllItems(); try makeConnection(); /见后面的makeConnection()方法 out.writeUTF(列出文件:+verifyMess); if(!(thread.isAlive() thread=new Thread(this); thread.start(); catch(Exception ee) JOptionPane.showMessageDialog(this,请登录,操作提示, JOptionPane.PLAIN_MESSAGE); if(e.getSource()=submit) n=list.getItemCount(); if(n=1) fileName=(String)list.getSelectedItem(); File file=new File(fileName); ClientTestArea.setExaminationFile(fi


    注意事项

    本文(JAVA课程设计报告(标准化考试系统).doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开