学生选课管理系统JAVA.docx
- 文档编号:26089622
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:24
- 大小:533.66KB
学生选课管理系统JAVA.docx
《学生选课管理系统JAVA.docx》由会员分享,可在线阅读,更多相关《学生选课管理系统JAVA.docx(24页珍藏版)》请在冰豆网上搜索。
学生选课管理系统JAVA
1.设计的原始资料及依据
查阅有关数据库设计、Java语言程序设计以及案例分析等资料,进一步熟悉面向对象程序设计基本理论以及基本思想。
本设计要求按照软件工程、数据库设计思想及设计步骤设计一个实用程序,并采用Java开发该系统。
通过本设计可以加深对面向对象程序设计基本思想的理解,加强学生研发、调试程序的能力,培养学生分析、解决问题的能力,提高学生的科技写作能力。
2.设计的主要内容及要求
(1)写出系统的需求分析。
(2)写出系统的数据库设计过程,包括概念结构设计、逻辑结构设计、物理结构设计。
(数据库应用程序管理系统类设计详细写,其它类设计可以略)
(3)写出系统设计思路—工作原理、功能规划。
(4)详细设计—数据分析、算法思路、类设计、功能实现(包括程序流程图、主要代码及注释)、界面等。
(5)运行调试与分析讨论--给出运行屏幕截图,分析运行结果,有何改进等。
3.对设计说明书撰写内容、格式、字数的要求
(1)学生应撰写的内容为:
中文摘要和关键词、目录、正文、参考文献等。
课程设计说明书(论文)的结构及各部分内容要求参照《沈阳工程学院毕业设计(论文)撰写规范》执行。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
(2)装订格式:
封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、结论、致谢、参考文献。
(3)课程设计说明书(论文)是体现和总结课程设计成果的载体,一般不应少于3000字。
4.设计完成后应提交成果的种类、数量、质量等方面的要求
(1)每组提交一份课程设计报告。
(2)每组提交一份课程设计成品。
5.时间进度安排
顺序
阶段日期
计划完成内容
备注
1
充分解读题目内容,进行需求分析设计。
2
系统功能结构设计,数据库设计。
3
单元模块设计及调试。
4
单元模块设计及调试。
5
单元模块设计及调试。
6
单元模块设计及调试。
7
单元模块设计及调试。
8
模块集成与测试
9
6
程序测试与完善
10
成绩评定以及撰写课程设计报告
6.主要参考资料(文献)
[1]耿详义.JAVA2教程.北京:
清华大学出版社,2004。
[2]张仿彦.JAVA项目开发全程实录.北京:
清华大学出版社,2007。
[3]杨小虎.软件工程课程设计.浙江:
浙江大学出版社,2007。
[4]韩万江.软件工程案例教程.北京:
机械工业出版社,2007。
[5]萨师煊,王珊著.数据库系统概论.北京:
高等教育出版社,2003。
课程设计成绩评定表
系(部):
班级:
学生姓名:
指导教师评审意见
评价内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
5
4
3
2
指导教师评审成绩
(加权分合计乘以8)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
5
4
3
2
工作量
工作量饱满,难度适中。
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
5
4
3
2
评阅教师评审成绩
(加权分合计乘以4)
分
加权分合计
评阅教师签名:
年月日
答辩小组评审意见
评价内容
具体要求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。
5
4
3
2
答辩
思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。
5
4
3
2
答辩小组评审成绩
(加权分合计乘以8)
分
加权分合计
答辩小组教师签名:
年月日
课程设计总评成绩
分
摘要
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
Java是一门很优秀的编程语言,具有面向对象、与平台无关、安全、稳定和多线程等特点,是目前软件设计中重要的编程语言。
Java语言是Sun公司推出的一种程序设计语言,拥有面向对象、便利、跨平台、分布性、高性能、可移植等优点和特性,是目前被广泛使用的编程语言之一。
掌握Java语言能够进行典型的Java应用开发。
Java确实具备“一次写成,处处运行”的特点,Java以成为网络时代最重要的编程语言之一。
学生选课管理系统采用模块化的设计思想,在WindowsXP操作系统环境下,采用NetBeansIDE作为Java的开发工具,后台的数据库采用MySQL数据库,实现选课信息网上操作的主要功能,包括学生选课信息的发布,学生选课信息查询,学生选课信息的修改等功能。
学生选课系统的意义在于使得学生选课变得更加方便。
该系统能够准确的进行选课的任务的选定、更改、删除等作用。
该系统的主要功能有登陆、增加、删除、修改、查询、退出。
在输入学号、姓名、密码后在确定没有出现错误,点击“登陆”后开始登录过程。
增加功能主要是在选定课程后单击“增加”按钮即可进行数据的增加。
“删除”主要是对错误的信息进行删除。
查询主要是对选定的课程进行查询;修改主要是对错误的信息进行修改。
本次课程设计是配合Java程序设计课程,帮助学生深入学习掌握Java语言,熟练运用这个工具来编写的。
通过课程设计各个项目的综合训练,培养学生实际分析问题、编程和动手能力、提高学生的综合素质。
课程设计尝试使用一些较生动的示例和设计项目,激发学生学习兴趣,引导学生主动学习,正确理解、接受需要重点掌握的知识点,为参加项目开发及更深入学习做好准备。
相关技术主要介绍了SQLServer数据库应用技术以及Java应用环境。
系统分析和数据库设计这两大模块详细地说明了数据库的需求分析、概念结构设计以及逻辑结构设计。
功能实现模块主要是通过系统截图来体现课程设计的结果。
关键词学生选课,Java,MySQL数据库,NetBeansIDE
第1章绪论
项目背景
随着选修课在大学的普及,参加选课的学生人数和选修课程的种类增加,必须依靠一个选修系统来完成繁杂的工作。
计算机与人类的关系愈来愈密切,计算机操作为人们带了越来越多的便利。
为了适应现代社会人们高度强烈的时间观念,学生选课系统将会为学生们带来极大的方便。
利用计算机支持学校高效率完成学生选课管理的日常事务,是适应现代企业制度要求、推动企业劳动型管理走向科学化、规范化的必要条件;而学生选课管理是一项琐碎、复杂而又十分细致的工作,学生的基本资料,课程的管理,各项统计报表的管理,一般不允许出错,如果实行手工操作,须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行学生选课工作的管理,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、可靠性高、存储量大、成本低、打印方便等。
这些优点能够极大地提高物业管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
编写目的
本系统的编写目的在于研究学生选课系统的开发途径和实现方法的简单应用。
Internet的蓬勃发展,以及互联网所容纳的信息量大、内容丰富、信息及时、准确,更有相关信息的全面介绍与比较。
为了学生在网上对选课信息的输入、管理、查询以及相应的操作变的简单,开发这样一个选课系统成为很有必要的事情。
软、硬件环境
(1)PC机
(2)操作系统:
WindowsXP
(3)开发工具:
NetBeansIDE
(4)数据库:
MySQL
系统开发语言
Java简介
Java语言是Sun公司于1990年开发的一种用于分布式网络环境的程序设计语言,现在Java已经成为开发和部署企业应用程序的首选语言,它有三个独立的版本:
(1)JavaSE
是Java语言的标准版本,包含Java基础库和语法。
(2)JavaEE
用于编写企业级应用程序,是一个标准的多层体系结构。
(3)JavaME
主要用于开发具有有限的链接、内存和用户界面能力的设备应用程序。
Java语言的特点
Java语言具有简单、面向对象、可移植、分布性、解释器通用性、稳健、多线程和同步机制、安全等语言特点,另外Java语言还提供了丰富方的类库,方便用户进行自定义操作。
开发工具
MySQL
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,目前MySQL被广泛地应用在Internet上的中小型网站中。
MySQL的有关特性如下:
(1)使用C和C++编写,并使用了多种编译器进行测试,保证的可移植性
(2)支持AIX、、HP-UX、、MacOS、Netware、OpenBSD、OS/2Wrap、Solaris、Windows等多种
(3)为多种编程语言提供了API。
这些编程语言包括、C++、、Java、、、Eiffel、Ruby和Tcl等
(4)支持,充分利用CPU资源
(5)优化的查询算法,有效地提高查询速度
(6)既能够作为一个单独的应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名
(7)提供TCP/IP、ODBC和JDBC等多种数据库连接途径
(8)提供用于管理、检查、优化数据库操作的
(9)可以处理拥有上千万条记录的大型数据库
MySQL界面如图1-1所示:
NetBeansIDE
NetBeansIDE是一个屡获殊荣的集成开发环境,可以方便的在Windows,Mac,Linux和Solaris中运行。
NetBeans包括开源的开发环境和应用平台,NetBeansIDE可以使开发人员利
用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeansIDE目前支持
图1-1MySQL界面
PHP、JavaScript、Ajax、Groovy、Grails和C/C++等开发语言。
NetBeans是一个全功能的开放源码JavaIDE,可以帮助开发人员编写、编译、调试和部署Java应用,并将版本控制和XML编辑融入其众多功能之中。
NetBeans可支持Java2平台标准版(J2SE)应用的创建、采用JSP和Servlet的2层Web应用的创建,以及用于2层Web应用的API及软件的核心组的创建。
NetBeansIDE用户界面如图1-2所示:
图1-2NetBeansIDE界面
第2章系统功能介绍
系统功能总框图
系统功能分析是在系统开发的总体任务的基础上完成。
根据系统分析确定的逻辑模型,确定新系统的物理模型,即计算机化信息系统应用软件的总体结构和数据库设计,并提出系统配置方案,继而对物理模型进行详细的设计。
主要内容有:
代码设计,用户界面设计,处理过程设计,编写系统设计说明书。
学生选课系统功能如下:
(1)用户登陆
用户输入用户名和密码,进行登陆。
(2)选课信息添加管理
对输入的信息进行添加操作。
(3)选修课程信息查询
按照系统所提供的查询条件对选课信息进行查询。
(4)选修课程信息修改和删除
根据系统所提供的条件对选课信息进行修改或者对信息进行删除。
学生选课管理系统
用户登陆
添加选课信息
查询选课信息
选课修改、删除
图2-1系统功能结构图
模块功能介绍
登录功能介绍
进入学生选课管理系统,必须进行登录。
在验证姓名和密码匹配对应的情况下,登陆者才能登陆进入系统内。
如果不匹配,则出现用“户名或密码错误”的提示。
除此之外,若出现恶意进入的情况,会提示用户“请不要恶意进入网站”。
查询功能介绍
查询主要分为模糊查询,完全查询,部分查询三种功能。
在没有关键词的模糊查询,可以查出包括学生姓名,学生学号,课程号等全部人员的信息。
当输入全部的关键字时,使用的就是完全查询,该功能可以明确的查询出与关键字有关的所需要的信息。
当输入的关键字不全时,就是在完成部分查询的功能,部分查询可以查询出与关键字有关的所有信息。
添加功能介绍
添加功能主要是对学生选课系统的各种信息进行添加,使系统内的信息更加完善。
添加功能是学生选课管理系统的最基本的功能。
只有添加功能的准确无误时,才可以使得修改功能和查询功能的正确进行。
在进行信息的添加时,点击添加按钮,往里面输入各种需要添加的信息,输入完成后,点击“确定”即可完成添加。
修改和删除功能介绍
修改和删除功能主要是为了保证选课信息的正确行以及简洁行。
避免了信息的错误和冗余度问题。
点击“修改”或“删除”按钮可以对以前错误的信息进行修改和删除,在完成后点击确定即可。
系统会自动提示是否删除,以避免错误操作。
返回主界面功能介绍
在完成查询或修改等功能后,想返回上一级,可以点击“返回主界面”即可重新进行操作。
以达到减少操作重复性。
组内任务分工
本次课程设计组内任务分工如下表:
表2-1组内任务分工表
组内成员
主要工作
杨美川(组长)
登陆和返回界面的实现、数据库需求分析部分的编写、文档整理、文档格式整理
邱恒凤
李明明
朱德林
添加功能的实现、绪论部分的编写、文档整理
查询功能的实现、系统功能介绍部分和总结、致谢的编写、文档整理
修改和删除功能的实现、系统功能实现部分的编写、文档整理
第3章数据库需求分析
数据库需求分析
需求概述
为了丰富大学生的业余生活,培养大学生的综合素质,大学选修课是必不可少的课程。
由于选修科目以及参加选课的人数的繁多,人为的记录操作显然不能高效的满足学校和学生的需要。
因此,选择设计一个学生选课管理系统。
通过调查分析,得出这个系统应该具有如下几个功能:
(1)提供学生登陆功能;
(2)完成相关记录的插入、修改、删除和查询等功能;
(3)提供操作完成后安全退出系统的功能;
(4)在实现前面功能的基础上,将操作界面改为图形用户界面。
学生选课系统所要达到的几个要求:
(1)要求系统准确的记录各种信息;
(2)系统要提供查询功能;
(3)系统可以对基础数据进行维护;
(4)系统运行在Windows平台下,需要有良好的图形用户界面;
(5)系统具有良好的可扩展性,良好的可移植性。
数据库概念结构设计
数据流图和数据字典
需求分析是数据库设计阶段中最为关键的一步,同时也是最耗时最消耗设计者精力的一步,但一旦将这一步完成的好,就像相当于完成了数据库设计工作量的一半以上。
需求分析阶段需要得到数据流图和数据字典。
完成的系统是学生选修课程管理系统,这个系统需要记录的信息包括学生个人基本信息、课程基本信息以及用户登录信息。
在学生选课管理系统,在我们完成的系统中将信息放在一张表中存储;而用户登录信息则是记录系统的登录者登录系统时,需要通过系统验证的信息(包含帐号和密码)。
用户可对系统进行的操作包括对系统中某些数据信息(如学生的选课信息)的更新(添加、删除、修改)和查询,用户在登录该系统的时候还需要进行帐号和密码的验证,这是通过对数据库管理完成的操作。
该系统的数据流图如图3-1所示。
选修信息表
学生
登录
添加
查询
修改、删除
图3-1系统的数据流图
本系统的所有数据信息都存储在MySQL数据库里。
而系统处于运行状态时,需要调用数据库中的信息,则自动执行连接数据库那部分代码,将我们是现存储好的数据调出使用即可。
E-R图
概念结构设计也是数据库设计阶段的关键一步,概念结构设计的主体思想是画出E-R图,是根据需求分析阶段得出的基本数据信息画出的。
本系统的E-R图如图3-2所示:
n
学生
学号
姓名
性别
班级
课程
课程名
任课教师
选修
学分
m
课程号
图3-2E-R图
数据库表的设计
根据数据项描述表,我们设计存储在数据库中的表如下所示:
表3-1学生信息表
字段名
字段类型
长度
备注
Sno
文本
8
唯一地标识一个学生
PW
文本
6
用户密码
SSex
文本
2
性别
Class
文本
5
指明所在班级
Sname
文本
20
登陆时的名称
Cno
文本
20
唯一标识一门课程
Teacher
文本
11
课程对应一名教师
Grade
文本
20
标识课程的学时
系统设计目标
本系统是根据学生选课进行开发设计的,主要实现如下目标:
1、对选修课程信息的管理;
2、对个人信息管理;
3、对相关记录的修改;
4、对相关记录的删除;
5、对有关信息的查询。
设计思想
本系统设计思想有以下几点:
系统应符合管理人员的具体要求,满足日常的管理工作需要,而且要达到使用时的直观、快捷、实用、安全、稳定等要求。
系统采用模块化的程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。
系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改等功能。
第4章系统功能实现
连接数据库
学生选课管理系统在登陆之前需要连接数据库,即在数据库中实现对学生选课信息的记载以及操作,我们使用的是MySQL数据库。
在使用数据库时必须先进行连接、测试。
连接测试成功界面如下图4-1所示:
图4-1MySQL连接成功
连接成功后登陆数据库中,对表进行各种操作。
数据库MySQL的界面如图4-2所示:
图4-2MySQL界面
系统登陆
在系统连接数据库成功后就会进入登陆界面,只要输入用户名user和用户密码password,点击确定,系统就会进入主界面。
登陆界面如图4-3所示:
图4-3登陆界面
点击登陆按钮,就会进入系统总体界面,如图4-4所示:
图4-4系统总体界面
系统登录部分代码如下:
privatevoidinitComponents(){
jPanel1=newjPanel2=newname=newpw=newjButton1=newjLabel2=newjLabel3=newjLabel1=newsetDefaultCloseOperationsetTitle("选课管理系统登陆");
setLocationByPlatform(true);
setResizable(false);
"登陆系统"));
("登陆");
(new{
publicvoidmouseClickedevt){
LoginCheck(evt);
}
});
("姓名");
("密码");
jPanel2Layout=new(jPanel2Layout);
(
.addGroup()
.addContainerGap(82,
.addGroup.addComponent(jLabel3)
.addComponent(jLabel2))
.addGap(18,18,18)
.addGroupfalse)
.addComponent(jButton1)
.addComponent(name,106,
.addComponent(pw))
.addGap(31,31,31))
);
(
.addGroup()
.addContainerGap()
.addGroup.addComponent(name,.addComponent(jLabel2))
.addGap(18,18,18)
.addGroup.addComponent(pw,.addComponent(jLabel3))
.addGap(18,18,18)
.addComponent(jButton1)
.addContainerGap(27,)
);
(new"楷体",1,24));ength>1){
"请不要试图入侵系统","错误",}else{
"密码:
"+pw);
booleanflag=false;
LoginCheckinglc=newLoginChecking();
try{
flag=(Sname,pw);
}catch(ClassNotFoundExceptionex){
null,ex);
}catch(SQLExceptionex){
null,ex);
}
if(flag==true){
本身窗体消失;
MainshowMain=newMain();etVisible(true);}
});
}
}
添加选课信息
点击主界面上的“添加记录”按钮,就可以进入添加编辑状态,添加学生记录后点击“添加”按钮,添加界面如图4-5所示:
4-5添加界面
添加选课记录的部分代码为:
publicAddDept_C(){
initComponents();}
privatevoidinitComponents(){
jLabel1=newCname=newjLabel2=newgrade=newjLabel3=newjButton1=newjLabel4=newSname=newjLabel5=newSno=newjLabel6=newClass=newjLabel7=newSsex=newjLabel8=newcno=newjLabel9=newteacher=newpw=newjLabel10=new("添加课程");
("课程名称");
("学分");
("添加");
(new{
publicvoidmouseClickedevt){
AddDept_M(evt);}
});
("姓名");
("学号");
("班级");
("性别");
("课号");
("教师");
("密码");
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 选课 管理 系统 JAVA