




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数学与计算机学院课程设计说明书课 程 名 称: 大型数据库-课程设计 课 程 代 码: 8424141 题 目: 学生成绩管理系统 年级/专业/班: 学 生 姓 名: 学 号: 开 始 时 间: 2012 年 6 月 9 日完 成 时 间: 2012 年 6 月 26 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书撰写质量(45)总 分(100)指导教师签名: 年 月 日目 录 1 引 言11.1 问题的提出11.2国内外研究的现状11.3任务与分析12.程序的主要功能(或需求分析,正式说明书中请删除此内容)22.1添加功能22.2删除功能22.3显示功能
2、22.4查找功能22.5修改功能23 程序运行平台24 总体设计25 数据库设计(本节说明此程序使用的关键数据结构、类对象等)35.1数据库概念设计35.2表结构45.3视图56 模块分析56.1 添加模块56.2 显示模块76.3 修改模块96.4 查找模块116.5 删除模块136.6 登陆模块177 界面设计207.1登陆界面217.2学生信息添加界面217.3学生成绩查询界面227.4学生成绩修改界面238 系统测试249.结论29 1 引 言 1.1 问题的提出在我国,各大中小学校的各类信息管理系统并非一个新的课题。大多数学校信息管理系统不完善,甚至有的学校根本就没有任何信息管理系统
3、,所有的管理工作几乎都是靠手工完成。特别是在西部贫困地区,学校的信息管理都依然靠手工操作,这十分落后,效率极低,成本很大,而且极易出错。随着计算机技术不断地日新月异地发展,信息化是社会进程的必然趋势,学校的信息管理只有快,精,准,才能发挥其作用。从人工操作改为计算机的自动化系统,人工操作必将被计算机代替。1.2国内外研究的现状 信息技术的日益发展深入到社会的各个角落,学生宿舍管理也不例外,尤其作为高等院校的宿舍管理工作,是高校各项工作的一个重要组成部分,其管理水平的高低将直接影响到人才培养的质量。随着高等教育的发展、高校规模的扩大、学生人数增加、学生宿舍各种信息的汇总、统计和分析等管理工作面临
4、着诸多困难,管理工作也越来越繁重和琐碎。因此宿舍管理的信息化、网络化越来越受到人们的重视,它既可以大大提高学生宿舍管理的绩效,也可以为学生解决后顾之忧。同时随着计算机技术的普及和发展,管理的自动化已成为必然趋势。因此,为了提高高校的整体管理水平,计算机在高等院校宿舍管理中的应用日益普及,这使得学生宿舍管理自动化的实现成为高校管理环节中的重要一环。1.3任务与分析本课题主要的目的是学生成绩管理系统,主要任务为建立学生信息管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。高校学生的成绩管理工作量大、繁
5、杂,人工处理非常困难。学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。2. 程序的主要功能(或需求分析,正式说明书中请删除此内容)2.1添加功能添加一个学生的基本信息,包括student_ID,student_Name,student_Sex,born_Date,class_NO,tele_Number,ru_Dat
6、e,address,comment。2.2删除功能能够对一个学生的信息进行删除按student_ID进行删除。2.3显示功能显示所有学生的主要信息包括student_ID,student_Name,student_Sex,result!2.4查找功能根据你键入的student_ID,显示其详细信息!2.5修改功能对学生的信息和成绩进行修改。3 程序运行平台编程工具:Netbeans编程语言: JAVA数据库:SQL SERVER 2005具体操作如下:具体操作如下:新建SutGradeManage项目,然后再编写相应的java文件,再编译,链接,执行等,用户就可登录进该系统进行相应的操作。4
7、总体设计主 函 数添加信息删除信息登陆系统修改信息显示信息查找信息 图4.1 系统总体框架图5 数据库设计(本节说明此程序使用的关键数据结构、类对象等)数据库设计是要在一个给定的应用环境(DBMS)中,通过合理的逻辑设计和有效的物理设计,构造较优的数据库模式、子模式,建立数据库和设计应用程序,满足用户的各种信息需求。5.1数据库概念设计在数据库设计中,先要对系统分析所得的数据字典中的数据存储进行分析,然后得出系统的关系模式,可以采用实体联系图(简称ER图)的方法进行数据结构的描述。ER图由实体、属性、联系三部分组成。图<> 登录信息E-R图图<> 学生信息E-R图 图&
8、gt; 课程信息E-R图5.2表结构表1 dbo.users表字段类型约束默认值说明userNameVARCHAR2(20 CHAR)PK用户名userPwdVARCHAR2(20 CHAR)not null密码userRightVARCHAR2(20 CHAR)not null权限表2 dbo.student表字段类型约束默认值说明student_IDCHAR(10 BYTE)PK学号student_NameVARCHAR2(20 CHAR)not null姓名student_SexCHAR(4 CHAR)性别born_DateCHAR(11 BYTE)出生日期tele_NumberCHAR
9、(15 BYTE)电话class_NONUMBER班号addressVARCHAR2(20 BYTE)地址commentVARCHAR2(20 BYTE)注释5.3视图表3 dbo.vi视图字段类型是否可空insertableupdatabledeletable说明ResultNUMBERYesYESYESYES成绩student_IDCHAR(10)NoYESYESYES学号student_NameVARCHAR2(80)NoYESYESYES姓名student_SexCHAR(16)YesYESYESYES性别born_DateCHAR(11)YesYESYESYES出生日期tele_Nu
10、mberCHAR(15)YesYESYESYES电话addressVARCHAR2(30)NoNONONO地址commentVARCHAR2(20)YesYESYESYES注释6 模块分析6.1 添加模块学生信息添加部分代码: public StudentGradFrame(String title)studentId = new JLabel("学号:");studentId.setHorizontalAlignment(JLabel.RIGHT);courseId = new JLabel("课程编号:");courseId.setHorizonta
11、lAlignment(JLabel.RIGHT);school = new JLabel("学年:");school.setHorizontalAlignment(JLabel.RIGHT);termId = new JLabel("学期:");termId.setHorizontalAlignment(JLabel.RIGHT);grade = new JLabel("分数:");grade.setHorizontalAlignment(JLabel.RIGHT);studentIdField = new JTextField();
12、studentIdField.grabFocus();studentIdField.addKeyListener(new KeyListener()public void keyPressed(KeyEvent e)if(e.getKeyCode() = KeyEvent.VK_ENTER)courseIdField.grabFocus();public void keyTyped(KeyEvent e)public void keyReleased(KeyEvent e);6.2 显示模块显示模块将输出所有学生的主要信息;主要代码为:public void viewStudent(Strin
13、g studId , JTextField id , JTextField name , JTextField sex , JTextField cla , JTextField date , JTextField phone , JTextField email , JTextField note)Connection conn = SQLConnection.getConnection();PreparedStatement st = null;ResultSet rs = null;if(conn != null)try st = conn.prepareStatement("
14、select * from students where stud_id = '"+ studId +"'");rs = st.executeQuery();while(rs.next()id.setText(rs.getString(1);name.setText(rs.getString(2);sex.setText(rs.getString(3);cla.setText(rs.getString(4);date.setText(rs.getString(5);phone.setText(rs.getString(6);email.setTex
15、t(rs.getString(7);note.setText(rs.getString(8); catch (SQLException e) e.printStackTrace();finallytryif(rs != null)rs.close();if(st != null)st.close();if(conn != null)conn.close();catch(Exception ignore)6.3 修改模块首先由用户输入要修改的学生的成绩主要代码:public UpdateGrade(String title)idLabel = new JLabel("请输入学号:&qu
16、ot;);idLabel.setFont(new Font("隶书",Font.BOLD,20);idField = new JTextField();idField.grabFocus();studentId = new JLabel("学号:");studentId.setHorizontalAlignment(JLabel.RIGHT);courseId = new JLabel("课程编号:");courseId.setHorizontalAlignment(JLabel.RIGHT);school = new JLabel(
17、"学年:");school.setHorizontalAlignment(JLabel.RIGHT);termId = new JLabel("学期:");termId.setHorizontalAlignment(JLabel.RIGHT);grade = new JLabel("分数:");grade.setHorizontalAlignment(JLabel.RIGHT);studentIdField = new JTextField();courseIdField = new JTextField();schoolField
18、= new JTextField();termIdField = new JTextField();gradeField = new JTextField();studentIdField.setEditable(false);courseIdField.setEditable(false);schoolField.setEditable(false);termIdField.setEditable(false);gradeField.setEditable(false);bQuery = new JButton("查询");bQuery.addActionListener
19、(new ActionListener()public void actionPerformed(ActionEvent e)if(!gradeDAO.queryGrade(idField.getText()gradeDAO.viewGrade(idField.getText(),studentIdField,courseIdField,schoolField,termIdField,gradeField);courseIdField.setEditable(true);schoolField.setEditable(true);termIdField.setEditable(true);gr
20、adeField.setEditable(true);bUpdate.setEnabled(true);bQuery.setEnabled(false);else/System.out.println("该学号不存在");JOptionPane.showMessageDialog(new JFrame(),"该学号不存在,重新填写");idField.setText("");idField.grabFocus(););6.4 查找模块首先由用户输入要查找的学生学号等,然后查找数据库中的该学生信息主要代码:public QueryExa
21、m(String title)idLabel = new JLabel("请选择查询方式:");idLabel.setFont(new Font("隶书",Font.BOLD,20);idField = new JTextField();idField.setEditable(false);jRByNum = new JRadioButton("课程编号");jRByNum.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)F
22、lag = 0;idLabel.setText("请输入课程编号:");idField.setEditable(true);idField.grabFocus(););jRByName = new JRadioButton("课程名称");jRByName.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)Flag = 1;idLabel.setText("请输入课程名称:");idField.setEditable(true
23、);idField.grabFocus(););jRByTerm = new JRadioButton("学期");jRByTerm.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)Flag = 2;idLabel.setText("请输入学期:");idField.setEditable(true);idField.grabFocus(););6.5 删除模块用删除学生信息主要代码:public DeleteStudentInfo(Strin
24、g title)idLabel = new JLabel("请填写学生编号:");idLabel.setFont(new Font("隶书",Font.BOLD,20);idField = new JTextField();idField.grabFocus();studId = new JLabel("学号:");studId.setHorizontalAlignment(JLabel.RIGHT);studName = new JLabel("姓名:");studName.setHorizontalAlignm
25、ent(JLabel.RIGHT);studSex = new JLabel("性别:");studSex.setHorizontalAlignment(JLabel.RIGHT);studClass = new JLabel("班级编号:");studClass.setHorizontalAlignment(JLabel.RIGHT);studDate = new JLabel("入学年份:");studDate.setHorizontalAlignment(JLabel.RIGHT);studPhone = new JLabel(
26、"电话号码:");studPhone.setHorizontalAlignment(JLabel.RIGHT);studEmail = new JLabel("电子邮箱:");studEmail.setHorizontalAlignment(JLabel.RIGHT);studNote = new JLabel("备注:");studNote.setHorizontalAlignment(JLabel.RIGHT);studIdField = new JTextField();studNameField = new JTextFiel
27、d();studSexField = new JTextField();studClassField = new JTextField();studDateField = new JTextField();studPhoneField = new JTextField();studEmailField = new JTextField();studNoteField = new JTextField();studIdField.setEditable(false);studNameField.setEditable(false);studSexField.setEditable(false);
28、studClassField.setEditable(false);studDateField.setEditable(false);studPhoneField.setEditable(false);studEmailField.setEditable(false);studNoteField.setEditable(false);bQuery = new JButton("查询");bQuery.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)if(!stud
29、entDAO.queryStudent(idField.getText()studentDAO.viewStudent(idField.getText(),studIdField,studNameField,studSexField,studClassField,studDateField,studPhoneField,studEmailField,studNoteField);bDelete.setEnabled(true);bQuery.setEnabled(false);else/System.out.println("该学生不存在");JOptionPane.sho
30、wMessageDialog(new JFrame(),"该学生不存在,重新填写");idField.setText("");idField.grabFocus(););bDelete = new JButton("删除");bDelete.setEnabled(false);bDelete.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)int msg = JOptionPane.showConfirmDialog(new
31、 JFrame(),"确定要删除该学生信息吗?(Y/N)","提示",JOptionPane.YES_NO_CANCEL_OPTION);if(msg = JOptionPane.YES_OPTION)userDAO.deleteUser(idField.getText();studentDAO.deleteStudent(idField.getText();studIdField.setText("");studNameField.setText("");studSexField.setText("&q
32、uot;);studClassField.setText("");studDateField.setText("");studPhoneField.setText("");studEmailField.setText("");studNoteField.setText("");idField.setText("");idField.grabFocus();JOptionPane.showMessageDialog(new JFrame(),"恭喜,删除成功"
33、;);/System.out.println("删除成功");bQuery.setEnabled(true);bDelete.setEnabled(false););6.6 登陆模块用于用户登陆主要代码:public LoginUI(String title)/super(null,"登录",true);this.setTitle(title);Border border = BorderFactory.createBevelBorder(BevelBorder.RAISED,Color.WHITE,Color.GRAY);Login = new JLa
34、bel("学生成绩管理系统");Login.setHorizontalAlignment(JLabel.CENTER);Login.setFont(new Font("宋体",Font.BOLD,20);Tip = new JLabel();Tip.setForeground(Color.RED);Tip.setHorizontalAlignment(JLabel.CENTER);Tip.setFont(new Font("宋体",Font.PLAIN,15);nameLabel = new JLabel("用户名:");nameLabel.setHorizontalAlignment(JLabel.RIGHT);passwordLabel = new JLabel("密码:");passwordLabel.setHorizontalAlignment(JLabel.RIGHT);n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024杭州科技职业技术学院辅导员招聘笔试真题
- 1.食品安全地方标准立项建议书(式样)
- 2023.06.21夏至一阴初升
- 2025年陕西省国家综合性消防救援队伍招聘考试试题【答案】
- 2025年湿簧式继电器项目发展计划
- 北京海淀区社区工作者招聘笔试真题2024
- 2025年昭通市昭阳区龙泉街道办事处选拔社区后备干部考试试题【答案】
- 2025年产后健康项目发展计划
- 消防专项方案
- 理财顾问实习报告范文-1
- 招商大使选聘管理办法
- 智慧教育基于大数据的个性化教学研究与实践
- 2025年中国铁路集团招聘笔试备考题库(带答案详解)
- 用工风险培训课件
- 海外现场安全健康环境管理(HSE)
- 2025年公安机关人民警察(行政执法)资格考试(客观题及刑法)含答案
- DB3502∕T 166-2024 既有厂区及老旧小区海绵城市方案设计导则
- 2025年 江西省金控科技产业集团有限公司招聘考试笔试试卷附答案
- 四川省成都市蓉城联盟2024-2025学年高一下学期6月期末考试物理试题(含答案)
- 2025年中国模内标签(IML)行业市场全景分析及前景机遇研判报告
- 【人教版】吉林长春2024-2025学年 五年级下学期期末数学试题【附答案】
评论
0/150
提交评论