学生学分管理系统.doc

上传人:laozhun 文档编号:3795607 上传时间:2023-03-22 格式:DOC 页数:38 大小:286.50KB
返回 下载 相关 举报
学生学分管理系统.doc_第1页
第1页 / 共38页
学生学分管理系统.doc_第2页
第2页 / 共38页
学生学分管理系统.doc_第3页
第3页 / 共38页
学生学分管理系统.doc_第4页
第4页 / 共38页
学生学分管理系统.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《学生学分管理系统.doc》由会员分享,可在线阅读,更多相关《学生学分管理系统.doc(38页珍藏版)》请在三一办公上搜索。

1、沈 阳 工 程 学 院课 程 设 计设计题目: JAVA编程技术课程设计 -学生学分管理系统 系 别 信息工程系 班级 计专本111 学生姓名 历程 武振英 胡京 学号 07 02 24 指导教师 曾祥萍、史江萍 职称 讲师、 讲师 起止日期:2012 年 6月 18 日起至 2012年 6月 29 日止 沈 阳 工 程 学 院课程设计任务书课程设计题目: Java编程技术课程设计 -学生学分管理系统 系 别 信息工程系 班级 计专本111 学生姓名 历程 武振英 胡京 学号 07 02 24 指导教师 曾祥萍、史江萍 职称 讲师、讲师 课程设计进行地点: F座 6楼 任 务 下 达 时 间:

2、 2012 年 6 月 11 日 起止日期: 2012 年 6 月 18 日起至 2012 年6月 29 日止教研室主任 杨弘平 2012年 6月 15 日批准通过课程设计使学生进一步加深对课程内容的理解,利用程序设计的基本思想进行程序的开发,进一步掌握编程方法和技巧,提高学生用程序的思想来解决实际问题的能力。1.设计的原始资料及依据随着经济的不断发展,学校学分的流程管理显得越来越重要,我们组设计了学生学分管理系统。原始资料及依据简介:随着学校设施及管理的不断完善,学生数量急剧增加,有关学生的各种信息量也成倍增长,学校在时时刻刻需要对学生对各种信息进行统计分析。 2设计的主要内容及要求第一组设

3、计题目:学生学分管理系统需要完成的功能:(1)学生信息查询(2)学生信息管理(3)学生学分管理(4)学生考试管理(5)数据库的创建、连接 (6)登陆界面系统3.具体人员分工:姓名 分工历 程登录模块、注册模块、主界面设计、辅导员 、教师模块设计武振英学生学分管理、学生信息查询、学生考试管理胡 京数据库设计、学生信息管理、教务处模块设计 4. 设计完成后应提交成果的种类、数量、质量等方面的要求 课程设计任务书 课程设计报告 设计成品(光盘)5.时间进度安排顺序阶段日期计 划 完 成 内 容备注16月18日查阅资料,充分解读题目内容,小组分工,确定每个人的具体任务。1天26月19日数据库设计及登陆

4、界面的实现。1天36月20日至6月25日编制程序,单元测试。4天46月26日至6月27日程序整合,综合调试。2天56月28日答辩。1天66月29日撰写课程设计报告。1天6.主要参考资料(文献)1 Sharon Zakhour.Java 教程.北京:人民邮电出版社,20072 Patrick Naughton.java 教程.北京: 电子工业出版社,20063 杨一平.JAVA 语言程序设计.北京:科学出版社,2006;4 张思民JAVA程序设计实践教程.北京:清华大学出版社,20065 耿祥义JAVA2 实用教程.北京:清华大学出版社,20066 李东升JDBC数据库编写与J2EE.北京:电子

5、工业出版社,20067 鄢爱兰 鹿江春 JAVA 程序参考大全. 北京:清华大学出版社,20068 朱仲杰 JAVA2 全方位学习.北京:机械工业出版社,2006 9 刘翼.java 课程设计.北京:人民邮电出版社,200510 Patrick Naughton. java 使用手册.北京:电子工业出版社,1996 沈阳工程学院 课程设计成绩评定表系(部): 信息工程系 班级: 计专本111 学生姓名: 历程 武振英 胡京 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,

6、遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语

7、准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评 阅 教 师 签 名: 年 月 日答 辩 小 组 评 审 意 见评价内容具 体 要 求权重评 分加权分学生汇报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答 辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.55432答辩小组评审成绩(加权分合计乘以8)分加权分合计答辩小组教师签名: 年 月 日课 程 设 计 总 评 成 绩分摘 要在当今众多的计算机程序设计

8、语言中,面向对象技术正逐步替代传统的面向过程的程序设计技术,成为目前软件的开发方法,Java语言以它独到的面向对象特性在各类编程语言中脱颖而出,Java语言的快速发展与广泛应用有目共睹。学生学分系统是针对学生学分管理进行设计的,主要为学校教务管理老师和学生对自己信息的核对确认。在本次课程设计中,我组设计题目为学生学分管理系统。主要目的为设计一个独立的学生学分管理系统,其具有学生基本信息的查询管理,学生学分信息的查询管理以及对学生考试的管理等功能。其中登陆后可以选择登陆用户的类别,包括学生,教师以及教务处的登陆。不同类别的用户登陆后分别实现不同用户工作需求。实现对学生基本信息、学分、科目的管理。

9、程序的功能大体通过图形用户界面GUI,以及各种组件配合实现,程序链接SQL Server数据库,并利用开发工具软件MyEclipse 7.0实现程序的调试以及运行。主要采用的开发工具是MyEclipse 7.0。在开发过程中利用面向对象的程序思想和严格按照软件工程的开发过程来进行分析和设计。本系统所要完成以下几个主要功能,其中有学生基本信息查询、学生基本信息管理、学生学分信息管理、学生考试信息管理等等,该系统基本满足了学生学分管理的功能需要,能为学校对学生的管理提供便利。对学生的基本信息、学分基本情况加快了查询速度、加强了管理,使各项管理更加规范化,一体化。关键字:Java,学分管理,数据库,

10、信息管理目 录摘 要I第1章 绪 论1第2章 系统功能介绍22.1系统功能总框图22.2 本人模块功能介绍22.2.1 学生登陆功能介绍22.2.2 导员登陆功能介绍22.2.3 教师登陆功能介绍32.2.4 教务处登陆功能介绍32.3 组内任务分工3第3章 数据库设计43.1 数据库需求分析43.2 数据库概念结构设计43.2.1 实体43.2.2 实体的属性43.2.3 实体间的联系43.2.4 程序E-R图43.3 数据库表的设计5第4章 系统功能实现74.1 主界面功能实现74.2 学生相应功能实现134.3 教师相应功能实现174.4 导员相应功能实现204.5 教务处相应功能实现2

11、44.6 主函数介绍26结 论29致 谢30参考文献31 第1章 绪 论学生学分管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生学分管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生学分信息进行管理,具有手工管理所无

12、法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学分管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。所以作为当代大学生,我组选择了与我们学习生活息息相关的学生学分管理系统,不仅是因为我们对此系统的需求以及设计都很熟悉,有利于我们对程序的分析和设计,而且也可以方便学校管理。确定课题后,我们通过需求分析、系统结构,功能模块划分以及数据库模式分析等,基本确定了程序的结构和具体设计方案以及我们所要实现的设计的框图。我们将通过开发工具软件MyEclipse 7.0完成了主要程序的调试以及运行。程序的功能大体通过图形用户界面

13、GUI,以及各种组件配合实现,程序链接的是SQL Server数据库。随着学生数量的增加,规模不断扩大,学生的成绩的信息量成倍增长。面对庞大的信息量,就需要合理的信息系统来管理,进而提高学生管理工作的效率。对学生学分管理系统开发的总体任务是实现学生学分信息关系的系统化、规范化和自动化。学生学分管理系统能有效地管理每个学生的学分,还可以管理学生的基本信息。该系统能简便地实行相关记录的查询,添加,修改,删除操作。学生学分管理系统特点:面向学生与学分管理人员提供服务。学分管理人员通过学生学分管理系统管理学生相关的学科学分数据。由于模块化的结构,学分管理、成绩系统既可一条龙运行,也可分别运行,只要提供

14、各部分所需的入口数据。统一的风格,标准的操作界面,便于学生使用学分管理的各个子系统。方便易用的工具,便于数据的查询,维护和打印。设计学生学分管理这样一个系统,可以涉及到大多数Java与数据库的重要功能和特性。通过这个课程设计可以加深我们对这些Java与数据库知识的学习、理解,积累在实际工程应用中运用各种数据库对象的经验,掌握使用应用软件开发工具开发数据库管理系统的基本方法。在实用性方面,学生学分管理系统是很普遍的一种应用,选择该系统作为课程设计也可以为我们以后可能遇到的实际开发提供借鉴。第2章 系统功能介绍2.1系统功能总框图 系统功能总框图如图1.1所示。信息查询信息查询信息管理信息查询学分

15、管理信息查询考试管理学生学分管理系统教师登陆学生登陆导员登陆教务处登陆图1.1 系统功能总框图2.2 模块功能介绍学生学分管理系统完成的功能主要有: 用户信息的管理,其中包括学生、导员、教师、教务处;学生信息的查询,其中包括学生基本信息查询、学生学分信息查询;学生信息的管理,其中包括学生学号、学生姓名、性别、班级、系别;学生信息的录入、删除、修改,其中包括学生学号、学生姓名、性别、班级、系别;学生学分管理的信息,其中包括学号、科目、姓名、班级、学分的录入、删除、修改;学生的考试管理,其中包括班级和科目的录入、删除、修改等。2.2.1 学生登陆功能介绍 学生登录主要实现的是学生基本信息查询和学生

16、学分信息查询。2.2.2 导员登陆功能介绍 导员登陆主要实现的是学生信息查询和学生信息管理,学生信息查询包括对学生基本的信息查询和学生学分信息查询,学生基本信息查询包括对学生的姓名、学号、性别、班级以及系别的查询。2.2.3 教师登陆功能介绍教师登陆主要实现的是学生信息查询和学生学分管理,其中学分管理包括对学生学号、姓名、班级、科目、学分的录入、删除、修改。2.2.4 教务处登陆功能介绍 教务处登陆主要实现的是学生信息查询和学生考试管理,学生考试管理是对学生科目和学分的录入、删除、修改。2.3 组内任务分工本课程设计组内分工如表1.1所示。表1.1 组内分工组员姓名主要分工历 程登录模块设计、

17、注册模块设计、学生基本信息查询模块、学生信息管理模块武振英学生学分管理模块胡 京学生科目管理模块第3章 数据库设计3.1 数据库需求分析在本系统的一个学校中,一个学生只能有一个学号,一个学生只能有一个班级号,一个教师只能有一个教师编号,一个教室可以教多门课,一个学生可以选多门课,学生根据各门课程会获得不同的学分。通过调查、收集与分析,获得用户对数据库的要求,我们根据学生学分管理的需求具体体现在各种信息的录入、更新、查询、删除,要求数据库结构能充分满足各种信息的输出和输入。3.2 数据库概念结构设计本次学生成绩管理系统的概念结构设计采用自底向上的分析方法,根据需求分析阶段得到的数据及信息,采取分

18、类,聚集的抽象方法,对需求分析的结果进行细化,补充和修改。3.2.1 实体学生与课程分别作为一个实体,因为课程与任课老师发生联系,即一个教师要教几门课程,因此教师也要作为一个实体,学生还要与学分发生联系,即一个学生针对他的成绩可以得到不同的学分,因此学分也要作为一个实体。所以综上所述,本系统确定了四个实体,即学生、课程、教师、学分。3.2.2 实体的属性实体的属性如下所示: 学生基本信息:学生学号、学生姓名、性别、班级、系别。 科目基本信息:课号、课程名、班级。 用户基本信息:姓名、密码、性别、邮件、电话、使用者。 学分基本信息:学号、姓名、班级、科目、学分。3.2.3 实体间的联系实体间的联

19、系如下所示: 学生课程:多对多 课程教师:一对多 学生学分:一对多3.2.4学生学分系统 E-R图根据实体,实体的属性,属性的码,实体之间的联系,设计出E-R图,如图3.1所示。姓名学号性别班级专业课号课名学生课目用户选择学习获得学分姓名科目班级m1mnn1班级邮件学分性别密码姓名学号图3.1 学生学分系统E-R图3.3 数据库表的设计数据库表如表3.1,表3.2,表3.3,表3.4所示。表3.1 用户基本信息表user列名数据类型长度备注name文本10姓名passwd文本10密码sex文本10性别email文本10邮箱tel文本10电话class文本10类别表3.2 学生基本信息表stud

20、ent列名数据类型长度备注Sno 文本10学号(主键)Sname 文本10姓名Ssex文本10性别Sclass文本10班级Sdepartment文本10系别表3.3 科目基本信息表km列名数据类型长度备注Kid文本10课程编号(主键)Kno文本10班级号Km文本10科目表3.4 学分基本信息表xf列名数据类型长度备注Sno 文本10学号(主键)Sname 文本10姓名Sclass文本10班号Skm文本10科目Sxf文本10学分第4章 系统功能实现4.1 主界面功能实现打开程序后,进入登录界面。首先是用户选择界面,可选项包括学生、导员、教师、教务处四种。其中不同类别用户登录将实现不同的功能。学生

21、登录可以实现学生信息的查询,导员登录可以实现学生信息的查询和学生信息的管理,教师登录可以实现学生信息查询和学生信息管理。教务处的登录可以实现学生信息查询和学生考试管理,如图4.1,图4.2所示。如果登录用户不存在,会提示用户注册,进入注册界面。图4.1登录主界面图4.2 学生登录界面 部分程序代码如下:/主界面代码public class Index extends JFrame implements ActionListenerJPanel panel,panel2;JMenuBar mb; JMenu mu1,mu2,mu3,mu4;JMenuItem mi1,mi2,mi3,mi4,mi

22、5,mi6,mi7,mi8,mi9,mi10,mi11;public Index()super(学生学分管理系统);mu1=new JMenu(学生信息查询); mu2=new JMenu(学生信息管理); mu3=new JMenu(学生学分管理); mu4=new JMenu(学生考试管理);mi1=new JMenuItem(学生基本信息查询);mi2=new JMenuItem(学生学分信息查询);mi3=new JMenuItem(学生信息录入);mi4=new JMenuItem(学生信息删除);mi5=new JMenuItem(学生信息修改);mi6=new JMenuItem

23、(学分录入);mi7=new JMenuItem(学分删除);mi8=new JMenuItem(学分修改);mi9=new JMenuItem(考试科目信息录入);mi10=new JMenuItem(考试科目信息删除);mi11=new JMenuItem(考试科目信息修改);panel=new JPanel();panel.setLayout(new GridLayout(1,4);mb=new JMenuBar(); mu1.add(mi1);mu1.add(mi2);mu2.add(mi3);mu2.add(mi4);mu2.add(mi5);mu3.add(mi6);mu3.add

24、(mi7);mu3.add(mi8);mu4.add(mi9);mu4.add(mi10);mu4.add(mi11);mb.add(mu1);mb.add(mu2);mb.add(mu3);mb.add(mu4); /在面板上添加各个控件setJMenuBar(mb); /设置菜单条 mi1.addActionListener(this);mi2.addActionListener(this);mi3.addActionListener(this);mi4.addActionListener(this);mi5.addActionListener(this);mi6.addActionLis

25、tener(this);mi7.addActionListener(this);mi8.addActionListener(this);mi9.addActionListener(this);mi10.addActionListener(this);mi11.addActionListener(this); /添加监听器 add(panel,BorderLayout.NORTH);setBounds(300,100,615,500); /设置窗体在屏幕中的位置addWindowListener(new WindowAdapter()public void windowClosing(Windo

26、wEvent e) System.out.println(0););setVisible(true);validate(); public void actionPerformed(ActionEvent e) if (e.getSource()=mi1)new BasicIn(); /调用学生基本信息模块else if(e.getSource()=mi2) new MarkChe(); /调用学分查询模块else if (e.getSource()=mi3) new InAdd(); /调用学生信息添加模块else if (e.getSource()=mi4) new InDel(); /调

27、用学生信息删除模块else if (e.getSource()=mi5) new InUpdate(); /调用学生信息修改模块else if (e.getSource()=mi6) new MarkAdd(); /调用学分添加模块else if (e.getSource()=mi7) new MarkDel(); /调用学分删除模块else if (e.getSource()=mi8) new MarkUpdate(); /调用学分修改模块 else if (e.getSource()=mi9) new ExamAdd(); /调用考试信息添加模块 else if (e.getSource(

28、)=mi10) new ExamDel(); /调用考试信息删除模块 else if (e.getSource()=mi11) new ExamUpdate(); /调用考试信息修改模块/注册界面代码public class Registe extends JFrame implements ActionListener String name; String passwd; String sex; String email; String tel; String cla; Connection con; Statement stmt; Container cont; Dimension sc

29、rnsize; Toolkit toolkit=Toolkit.getDefaultToolkit(); JPanel panel,panel2,panel3; JLabel uname,upasswd,usex,uemail,utel,uclass ; JTextField txtname,txtemail,txttel; JRadioButton jsex1,jsex2; JComboBox cbbclass; ButtonGroup bsex; JPasswordField pwdpasswd; JButton registe; String usercla=学生,辅导员,任课教师,教务

30、处; public Registe() super(注册界面); cont=getContentPane(); panel=new JPanel(); panel2=new JPanel(); panel3=new JPanel(); uname=new JLabel(用户名); upasswd=new JLabel(密 码); usex=new JLabel(性 别); uemail=new JLabel(邮 箱); utel=new JLabel(电 话); uclass=new JLabel(类 别); bsex=new ButtonGroup(); jsex1=new JRadioBu

31、tton(男,true); jsex2=new JRadioButton(女,false); txtemail=new JTextField(10); txtname=new JTextField(10); pwdpasswd=new JPasswordField(10); cbbclass=new JComboBox(usercla); cbbclass.setSize(10, 5); txttel=new JTextField(10); registe=new JButton(确定); bsex.add(jsex1); bsex.add(jsex2); panel.add(uname);

32、panel.add(txtname); panel.add(upasswd); panel.add(pwdpasswd); panel2.add(usex); panel2.add(jsex1); panel2.add(jsex2); panel3.add(uemail); panel3.add(txtemail); panel3.add(utel); panel3.add(txttel); panel3.add(uclass); panel3.add(cbbclass); panel3.add(registe); jsex1.setSelected(true); /添加控件 panel.se

33、tLayout(new GridLayout(2,2); / 控件布局 panel2.setLayout(new GridLayout(1,3); panel3.setLayout(new GridLayout(4,2); cont.setLayout(new GridLayout(3,1); cont.add(panel); cont.add(panel2); cont.add(panel3); registe.addActionListener(this); setSize(200, 300); addWindowListener(new WindowAdapter() public vo

34、id windowClosing(WindowEvent e) System.out.println(0););setVisible(true);validate();scrnsize=toolkit.getScreenSize();setLocation(scrnsize.width/2-this.getWidth()/2, scrnsize.height/2-this.getHeight()/2); public void actionPerformed(ActionEvent ae)if(ae.getSource().equals(registe) name=txtname.getTex

35、t();passwd=pwdpasswd.getText();if(jsex2.isSelected()sex=女;else sex=男;email=txtemail.getText();tel=txttel.getText();cla=(String) cbbclass.getSelectedItem(); try Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver).newInstance(); catch(ClassNotFoundException d)System.out.println(+d);trycon=Driv

36、erManager.getConnection(jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=mark,sa,123456);stmt=con.createStatement();System.out.println(INSERT INTO user VALUES(+name+,+passwd+,+sex+,+email+,+tel+,+cla+); stmt.executeUpdate(INSERT INTO user VALUES(+name+,+passwd+,+sex+,+email+,+tel+,+cla+); dispo

37、se(); if(cla.equals(学生) new Student(); if(cla.equals(辅导员) new Daoyuan(); if(cla.equals(任课教师) new Teacher(); if(cla.equals(教务处) new Jwc(); JOptionPane.showMessageDialog(null, 注册成功!);con.close();catch(SQLException d)d.printStackTrace(); JOptionPane.showMessageDialog(null, 注册失败!);System.out.println(d);4.2 学生相应功能实现以学生用户身份登录后可选择“学生基本信息查询”和“学生学分信息查询”,其余选项通过setEnabled(False)来实现不可选。运行界面如图4.3,图4.4所示。 图4.3 学生信息查询界面 图4.4 学生学分信息显示部分程序代码如下:/学生基本信息查询public class BasicIn extends JFrame implements ActionListener String stuno; String stuname; String stusex; String classno; Stri

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号