《2022年本科学生综合性实验报告 .docx》由会员分享,可在线阅读,更多相关《2022年本科学生综合性实验报告 .docx(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 本科同学综合性试验报告课程名称: Java 开发技术工程名称:同学成果经管系统同学姓名学号指导老师开课学期 2022 至 2022 学年 第 一 学期完成时间 2022 年 1 月 3 日目录摘要 1 1 工程讨论开发的背景及意义 1 1.1 本课题设计学术价值、理论意义和实践意义 1 1.2 本课题设计拟讨论的主要问题 2 1.3 重点和难点 2 1.4 讨论方法、预期效益 2 1.5 本工程创新点和特色 2 2 需求分析 3 2.1 开发背景 3 2.2 工程目标 3 2.3 运行环境 3 名师归纳总结 2.4 任务说明书4 6 第 1 页
2、,共 31 页3 技术路线及关键技术3.1 系统总体功能图6 - - - - - - -精选学习资料 - - - - - - - - - 3.2 同学成果经管系统的功能模块简介:9 3.3 系统运用的主要技术:22 3.4 数据库设计 23 3.5 连接数据库 26 4 测试报告及系统评判 27 4.1 系统简介: 27 4.2 系统特色及缺点:28 5 系统使用说明 28 5.1 用户操作指南:28 6 个人感受及收成 29 7 大作业归纳总结 30 感谢 30 8 参考文献: 30 摘要人类已进入21 世纪 , 科学技术突飞猛进, 经济学问和信息产业初见端倪, 特殊是信息技术和网络技术的讯
3、速进展和广泛应用, 对社会的政治 , 经济 , 军事 , 文化等领域产生越来越深刻. 同学成果经管系统是一个训练单位不行缺少的部分,它的内容对于学校的决策者和经管者来说都至关重要;本次大作业的同学成果经管系统是用 java 编程 +SQL server 2000 数据库+SQL查询语言实现的 . 重点介绍了同学成果经管系统的实现过程 : 包括系统需求分析、功能设计、数据库设计、系统实现、系统测试和调试等;关键字:成果经管统计信息经管数据库1 工程讨论开发的背景及意义1.1 本课题设计学术价值、理论意义和实践意义现在的社会学问经济在世界经济进展的位置越来越高,国家综合国力和国际竞争才能越来越取决
4、于训练进展,科学技术和学问创新的水平,训练在经济和社会进展过程中将出现出越来越突出的重要作用;同学成果经管系统是一个训练单位不行缺少的部分,它的内容对于学校的决策者和经管者来说都至关重要,所以同学成果经管系统应当能够为用户供应充分的信息和快捷的查询手段;但是有些学校仍是使用传统人工的方式经管同学成果,填写各种表格,这种经管方式存在着很多缺点,如:效率低,保密性差,另外所用其时间长,产生大量的文件和数据,这对于查找,更新和保护都带来了不少的困难;在此次大作业中,我综合 java 编程、 SQL数据库和 SQL查询语言来实现一个简洁的同学成果经管系统;名师归纳总结 - - - - - - -第 2
5、 页,共 31 页精选学习资料 - - - - - - - - - 1.2 本课题设计拟讨论的主要问题一个完整的同学经管系统包括四个功能模板:(1)基本信息经管:包括对同学、老师、课程、成果信息进行查找、删除、修改和添加;(2)课表查询:同学和老师都可以对自身的课表进行查询;(3)统计功能:对同学单科成果、总成果、全部同学成果的平均分进行统 计,并作出相应的排名;(4)图形界面,将同学单科成果用柱形图表示出来,清楚简洁地表示出成 绩的分布情形;1.3 重点和难点(1)界面要求美观,需娴熟把握利用 java 语言来布局;(2)数据库多个表联系,利用视图或者储备过程,需娴熟把握数据库的操作;(3)
6、模糊查找和精确查找,在界面上要求两者兼容,数据库上要求联系紧密;(4)统计功能,单科和总成果要求进行统计;(5)图形界面, 系统主界面加入背景图片以及成果统计时以不同颜色的柱形图形象表 达;1.4 讨论方法、预期效益本次课程设计属于很普遍的应用讨论类,我只是在大家做的基础上加上我自己的的想法以 及设计; 同时结合我们现在同学的成果情形来进行设计;我采纳的方法是理论分析结合实际 来进行讨论的, 通过学习体会来建立模型,在此基础上对同学成果经管系统进行设计;这个 系统将在 12 月下旬设计终止,界面美观,使用便利,功能较全的一个原型系统;此系统可 以应用于落后的乡村的中学校教案经管;1.5 本工程
7、创新点和特色(1)本系统采纳 java 和数据库结合的方式开发,可以对大量的数据进行储备和操作;(2)本系统使用 java开发,具有跨平台特性;(3)本系统功能俱全,具有同学、老师、课程的信息经管和多条件的成果查询和课程查询,成果统计和利用柱形图反应成果分布;(4)系统具有安全性,用户只能通过用户名和密码拜访;同学、老师;不同的用户权限不同;同时设定三种用户:经管员、名师归纳总结 - - - - - - -第 3 页,共 31 页精选学习资料 - - - - - - - - - 2 需求分析2.1 开发背景当今时代是飞速进展的信息时代,在各行各业中离不开信息处理,这正是运算机被广泛应用于信息经
8、管系统的环境;运算机的最大好处在于利用它能够进行信息经管 .使用运算机进行信息掌握,不仅提高了工作效率,而且大大的提高了其安全性 管,运算机能够充分发挥它的优越性 .;.特殊对于复杂的信息经经管信息系统是进行信息的采集、储备、加工、保护和使用的系统 ,它是随着经管科学和技术科学的进展而形成的;同学成果经管系统是一个训练单位不行缺少的部分,它的内容对于学校的决策者和经管者来说都至关重要,所以同学成果经管系统应当能够为用户供应充足的信息和快捷的查询手段,对同学来说可以轻松的查阅自己在校的成果,个人信息和课表查询等,但是始终以来在落后的乡村一些中学校人们都是靠传统人工的方式经管同学成果,这种经管方式
9、存在着很多缺点,如:效率低,保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和保护都带来了不少的困难;随着科学技术的不断提高,运算机科学日渐成熟,其强大的功能已为人们深刻熟悉,它已进入人类社会的各个领域并发挥着越来越重要的作用,作为运算机应用的一部分,使用计算机对同学成果信息进行经管,有着手工经管所无法比拟的优点,例如:检索快速、查找方便、牢靠性高、储备量大、保密性好、寿命长、成本低等;这些优点能够极大地提高同学成 绩经管的效率,也是企业的科学化,正规化经管,与世界接轨的重要条件;因此,开发这样 的一套成果经管系统成为很有必要的事情;同学成果经管系统供应了比较全面的同学成果经管
10、经管功能,绩等信息的添加、修改、删除、查询、统计等操作;2.2 工程目标便利系统经管员对同学成(1)经管员能够实现对整个同学信息的添加、修改、删除、查询等操作;(2)经管员能够实现对整个老师信息的添加、修改、删除、查询等操作;(3)经管员能够实现对整个课程信息的添加、修改、删除、查询等操作;(4)同学、老师、经管员对整个成果的查询;(5)老师、同学查询课表;(6)系统对成果具有统计运算的功能,将成果情形用柱形图形象地表现出来,并对成果进 行排名,包括单科和总成果;(7)不同的角色不同的权限;2.3 运行环境同学成果对运行环境没有很高的要求,而且可以跨平台运行,包括现有的linux 和 uniu
11、x等操作系统;但是让同学成果经管系统反应操作更快,我举荐用户使用如下的配置:正确配置: CPU 2GHz 内存512M 硬盘80G Windows XP/linux/uniux 名师归纳总结 - - - - - - -第 4 页,共 31 页精选学习资料 - - - - - - - - - JDK1.6.0 ,Java 程序开发环境2.4 任务说明书Eclipse /MyEclipse , SQL sever 2000 任务概述:通过在网上看一些同学成果经管系统的源代码,构想自己系统该有的功能框架; 将自己的构想和网上的进行对比,将自己的系统不断地完善;一下是此次大作业的工程进度支配表:表 2
12、.4-工程进度表阶段任务时间方案完成工作实际完成情形阶段一:2022 年 11 月 20 日接到大作业任务后,通过网上查阅地资料,结合分析选题阶段2022 年 11 月 30 日对 供 选 题 目 进 行 分自身目前所学的学问,并且析,并通过查询资料结合了老师的相关看法,最及相关信息,结合我终个人挑选了同学成果经管们所学习的学问及的系统;该系统是桌面应用系详细情形,挑选相应统,结合数据库和java 来完的题目并且确定工作成;技术方案;阶段二:2022 年 12 月 1 日摸索程序的大体方向个人经过一番摸索,确定程程序编写及调试阶段2022 年 12 月 9 日及主题思路,确定程序大体的思路及程
13、序包含的序 所 包 含 的 相 关 功功能,即为教案单位供应一能,同时完成对程序个能对同学成果统计与经流程、模块以及相关管,同学信息,老师信息,类的设计;授课信息经管的系统;然后画出了程序主体的流程图,将系统分成三个大模块模块;阶段二:2022 年 12 月 10 日在前期设定的流程图(1)成果信息(2)成果统计(3)基本信息经管经过一段的时间的编写,建名师归纳总结 程序编写及调试阶段2022 年 12 月 15 日和系统模块化的基础立好数据库,同时完成了程第 5 页,共 31 页上,完成程序全部的序各个详细部分的实现,完详细部分代码的编写成了三个模块及其他布局函及各种相关功能的实数的编写,详
14、细如下:- - - - - - -精选学习资料 - - - - - - - - - 现;(1)Manage_student.java 实 现同学信息的添加、删除、查询、修改功能;(2)Manage_course.java 实 现课程信息的添加、删除、查询、修改功能;(3)Manage_teacher.java 实 现老师信息的添加、删除、查询、修改功能;(4)Manage_teach 实现授课 的添加、删除、查询、修改 功能;(5)SignalCount.java 实现分 数的运算(6)SignalCount.java 实现分 数的运算(7)Photo.java 实现分数的 分布图,将数据以柱
15、形图的 形式表示出来;(8)DataManager.java 实现 数据库的连接;阶段三:2022 年 12 月 16 日完成了整个程序的编使用所预备的数据库中不同程序编写及调试阶段2022 年 12 月 21 日写工作之后,将数据的数据对程序进行测试,并库中的数据对我们的且对得出的结果进行分析,程 序 进 行 完 善 的 测最终得出测试结果没有错误试,确保程序的精确的结论;确定程序没有错误,性;整个程序的详细情形与个人最初的目标相吻合;阶段三:2022 年 12 月 22 日完成大作业报告中的基于在第一阶段所作的工作报告撰写阶段2022 年 12 月 27 日需求分析及程序分析并结合收集的相
16、关资料,我部分的填写;们用了很短的时间完成这一部分的填写;阶段三:2022 年 12 月 28 日完成大作业报告技术基于在其次阶段所作的工报告撰写阶段2022 年 12 月 31 日路线及测试报告部分作,对整个程序经过细致的的填写;分析最终对其进行规律的归类,完成了技术路线这一部分的填写;再对前期所作的 测试的结果进行分析、汇总、归纳总结,完成了测试部分 的填写;由于程序需要添加 很多注释,再加上程序的内容较多以及对前期测试结果名师归纳总结 - - - - - - -第 6 页,共 31 页精选学习资料 - - - - - - - - - 的整理,使得这一部分花费了相对较长的时间阶段三:202
17、2 年1 月1 日完善程序代码以及实由于前阶段代码显现了肯定程序完善阶段2022 年 1 月 3 日验报告的错误,对其进行修改,并取得胜利;3 技术路线及关键技术3.1 系统总体功能图(1)系统结构图同学成果经管系统经学老管生师员学教课成课查查查查查查生师程绩程询询询询询询信信信信授成个成成教成息息息息课绩人绩绩师绩经经经经经课统课统管管管管管表计表计图 3.1-系统归纳总结构图(2)系统流程图:在系统设计中,将用户分成三种权限,不同权限的用户,就拜访的内名师归纳总结 容不同、掌握的信息也不同,系统结构图如图3.1,系统流程图如图3.2;第 7 页,共 31 页- - - - - - -精选学
18、习资料 - - - - - - - - - 开头挑选用户登录输入用户名密码Y 正确 操作退出终止图 3.2-系统流程图(3)在系统结构图中,我们可以看到经管员对同学、课程、成果、老师的基本信息有增删改除的功能,以下是详细功能模块结构图:同学信息经管学学学学生生生生信信信信息息息息添修查删加改询除图 3.3-同学信息经管模块名师归纳总结 - - - - - - -第 8 页,共 31 页精选学习资料 - - - - - - - - - 老师信息经管教教教教师师师师信信信信息息息息添修查删加改询除图 3.4-老师信息经管模块课程信息经管课课课课程程程程信信信信息息息息添修查删加改询除图 3.5-课
19、程信息经管模块成果信息经管成成成成成绩绩绩绩绩信信信信统息息息息计添修查删加改询除图 3.6-成果信息经管模块名师归纳总结 - - - - - - -第 9 页,共 31 页精选学习资料 - - - - - - - - - 3.2 同学成果经管系统的功能模块简介:(1)基本信息经管(以同学为例)ifobj=tianjia/添加 Sno =tf_xuehao.getText.trim;age1 =0|Sno .Sname =tf_xingming.getText.trim;sex =tf_xingbie.getText.trim;age1 =Integer.parseInt tf_nianlin
20、g.getText.trimtel_no=tf_dianhua.getText.trim;classno=tf_banhao.getText.trim;addr =tf_dizhi.getText.trim;if Sno .length=0|Sname .length=0|sex .length=0|length=0|tel_no.length=0|addr .length=0|classno.length=0 信息 ,JOptionPane.JOptionPane.showMessageDialog this, 请添加完整信息! , 提示QUESTION_MESSAGE ; else try
21、 名师归纳总结 ps =con .prepareStatementinsert into student values.,.,.,.,.,.,. ;第 10 页,共 31 页ps .setString1, Sno ;ps .setString2, Sname ;ps .setString3, sex ;ps .setString4, classno ;ps .setString5, addr ;ps .setInt6, age1 ;- - - - - - -精选学习资料 - - - - - - - - - ps .setString7, tel_no ;示信息 ,JOptionPane.JOp
22、tionPane.showMessageDialog this, 确定添加吗? , 提QUESTION_MESSAGE ;tf_xuehao.setText ;tf_xingming.setText ;tf_xingbie.setText ;tf_nianling.setText ;tf_dianhua.setText ;tf_dizhi.setText ;tf_banhao.setText ;rs =ps .executeQuery; catch SQLException sql 息 ,JOptionPane.JOptionPane.showMessageDialog this, 添加胜利!
23、 , 提示信QUESTION_MESSAGE ; ifobj=xiugai/修改 String no= shuru .getText.trim;Sno =tf_xuehao .getText.trim;Sname =tf_xingming .getText.trim;sex =tf_xingbie .getText.trim;age1 =Integer. parseInt tf_nianling .getText.trim;tel_no =tf_dianhua .getText.trim;addr =tf_dizhi .getText.trim;classno =tf_banhao .getT
24、ext.trim;try 名师归纳总结 ps =con .prepareStatementupdate student set , 确定修改吗? ;第 11 页,共 31 页Sno=.,Sname=.,sex=.,classno=.,addr=.,age=.,tel_no=. where Sno=.ps .setString1, Sno ; , 提示信ps .setString2, Sname ;ps .setString3,sex ;ps .setString4,classno ;ps .setString5,addr ;ps .setInt6,age1 ;ps .setString7,te
25、l_no ;ps .setString8,no;JOptionPane.showMessageDialog this息 ,JOptionPane.QUESTION_MESSAGE ;tf_xuehao.setText ;- - - - - - -精选学习资料 - - - - - - - - - tf_xingming.setText ;tf_xingbie.setText ; this, 修改胜利 . , 提示信息tf_banhao.setText ;tf_dizhi.setText ;tf_nianling.setText ;tf_dianhua.setText ;JOptionPane.s
26、howMessageDialog ,JOptionPane.INFORMATION_MESSAGE ;rs =ps .executeQuery;rs .next; catch SQLException sql JOptionPane.showMessageDialogComponentnull,sql.getMessage, 提示信息 ,JOptionPane.QUESTION_MESSAGE ; ifobj=shanchu/删除 try String no= shuru .getText.trim;ps =con .prepareStatement delete from student w
27、here Sno=. ;ps .setString1,no;JOptionPane. showMessageDialog this , 确定删除吗? , 提示信息 ,JOptionPane. QUESTION_MESSAGE ;tf_xuehao .setText ;tf_nianling .setText ;tf_xingming .setText ;tf_dianhua .setText ;tf_dizhi .setText ;tf_xingbie .setText ;tf_banhao .setText ;rs =ps .executeQuery;JOptionPane. showMes
28、sageDialog this , 删除胜利! , 提示信息 ,JOptionPane. INFORMATION_MESSAGE ; catch SQLException sqlex sqlex.getMessage; 名师归纳总结 - - - - - - -第 12 页,共 31 页精选学习资料 - - - - - - - - - ifobj=qingkong/清空 shuru .setText ;tf_xuehao .setText ;tf_nianling .setText ;tf_xingming .setText ;tf_dianhua .setText ;tf_dizhi .set
29、Text ;tf_xingbie .setText ;tf_banhao .setText ; 主要功能:添加、删除、修改、查询同学基本信息;实现目的:对于每个新的学年都有大量的同学入录,对同学信息的添加是必不行少的;同时, 在经管员的日常工作过程中,难免不显现错误; 所以对其信息修改功能也是必不行少的,删除就是在同学开除学籍时可以使用;同时课程、老师、成果信息和同学信息操作是相同的;(2)成果统计:/ 统计各科平均分public String SubjectAvgString subject String s = null;float t = 0 ;this .Connect;if subj
30、ect.equals 运算机网络 try s = select avggrade from transcript where Cno=003125;st = this.Connect.prepareStatements;rs = st .executeQuery;while rs .next t = rs .getFloat1; catch Exception e e.printStackTrace; ifsubject.equals 数据库系统原理 名师归纳总结 try s = select avggrade from transcript where Cno=003126;第 13 页,共
31、 31 页- - - - - - -精选学习资料 - - - - - - - - - st = this.Connect.prepareStatements;rs = st .executeQuery;while rs .next t = rs .getFloat1; catch Exception e e.printStackTrace; ifsubject.equals 多媒体技术基础 try s = select avggrade from transcript where Cno=003127;st = this.Connect.prepareStatements;rs = st .e
32、xecuteQuery;while rs .next t = rs .getFloat1; catch Exception e e.printStackTrace; ifsubject.equals 概率论与数理统计 try s = select avggrade from transcript where Cno=003128;st = this.Connect.prepareStatements;rs = st .executeQuery;while rs .next t = rs .getFloat1; catch Exception e e.printStackTrace; retur
33、n Float.toStringt; 名师归纳总结 /总分平均分统计第 14 页,共 31 页public String allAvg - - - - - - -精选学习资料 - - - - - - - - - float sum = 0;int count = 0;/ st = this.Connect.prepareStatementsqlString s = select sumgrade as total from transcriptSystem.out .printlns=+s ;try st = this.Connect.prepareStatements;rs = st .ex
34、ecuteQuery;System.out .printlnrs=+rs ;if rs .next sum = rs .getFloattotal ;System.out .printlnsum=+sum ; rs = null;s = select sumgrade from transcript where Cno=001325;st = this .Connect.prepareStatements;rs = st .executeQuery;if rs .next sum =sum + rs .getFloat1; rs = null;s = select sumgrade from
35、transcript where Cno=001326;st = this .Connect.prepareStatements;rs = st .executeQuery;if rs .next sum =sum + rs .getFloat1; rs = null;s = select sumgrade from transcript where Cno=001328;st = this .Connect.prepareStatements;rs = st .executeQuery;if rs .next sum =sum + rs .getFloat1; 名师归纳总结 rs = nul
36、l;第 15 页,共 31 页st = s = select countdistinct Sno from transcriptthis.Connect.prepareStatements;rs = st .executeQuery;- - - - - - -精选学习资料 - - - - - - - - - if rs .next count = rs .getInt1; catch Exception e e.printStackTrace; if count = 0 return 0;else return Float.sum = sum/count;toStringsum /获得各科的分
37、数段人数int grade publicint gethighString subject,/总的人数int num = 0;String s = null;this.Connect;ifsubject.equals 运算机网络 名师归纳总结 ifgrade = 60 运算机网络 ;第 16 页,共 31 页s = select countsno from transcript a,course b where grade 60 and a.Cno=b.Cno and Cname=运算机网络 ;ifgrade = 70 s = select countsno from transcript a,course b where grade =60 and a.Cno=b.Cno and Cname=;ifgrade = 80 s = select countsno from transcript a,course b where 运算机网络 grade =70 and a.Cno=b.Cno and Cname=;ifgrade = 90 s = select countsno from transcript a,course b where 运算机网络 grade 90 an