ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:186KB ,
资源ID:8421041      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8421041.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(学生学籍管理系统设计与实现.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

学生学籍管理系统设计与实现.docx

1、学生学籍管理系统设计与实现 数据库系统课程设计报告 题 目 学生学籍管理系统的设计与实现 学生姓名 高凯 学 号 * 学 院 计算机与软件学院 专 业 网络工程 指导教师 马 瑞二一五年 月 日2 系统需求分析及相关技术介绍 12.1 系统需求分析 12.2 系统的可行性分析 23 总体设计 23.1 系统模块设计 23.2 数据库设计 33.2.1 数据库逻辑结构设计 33.2.2 数据库物理结构设计 34 系统实现 44.1 系统功能结构 54.1.1 功能模块说明 54.1.2 功能设计与介绍. 54.2 具体功能介绍 54.2.1 登陆界面. .64.2.2 主功能界面. .75 主要

2、程序代码及说明. .146课题总结. .19参考文献. .19学生学籍管理系统的设计和实现1引言当今社会中,计算机的使用已经深入到日常工作和生活的方方面面。电脑早早从高雅的学术殿堂走入了寻常百姓家,各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。然而,虽然现在世界上已经充满了各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。我们都知道,对于学生的学籍管理是一个教育单位不可缺少的部分,它的内容对学校的管理者来说至关重要。所以学生学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管

3、理方式存在着许多缺点,如效率低、保密性差;另外,时间一长将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。而使用计算机对学生学籍信息进行管理具有手工管理所无法比拟的优点,例如检索迅速、查找方便、存储量大、保密性好等等。这些优点能够极大地提高学生管理的效率,也是学校科学化、正规化管理的重要途径。1.1开发背景和意义长期以来,学校对学生学籍的管理都还使用着传统的模式。在此模式下,人工的记录学生信息、考试信息等等。而随着现代素质教育与时代的不断发展,这样的模式已经不能完全适应现代的教育形势。较之传统的管理方式,我所设计的学生学籍管理系统的优势有:一方面可以实现数据共享,不但像使用单机

4、系统一样,进行便捷地各种数据的添加、修改、删除、查询和统计等操作,并且具有相当的安全性和可靠性;另一方面,检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学籍管理的效率,也是学校的科学化、正规化管理与社会接轨的重要条件。2系统需求分析和可行性分析2.1 系统需求分析学生学籍管理系统是基于学校的工作需求而设定,围绕这一工作需求,根据高校人员结构分析,在项目开发前期的需求分析工程中,学生学籍管理系统的应用应包括系统设置、学生信息管理、学生成绩管理以及系统说明等部分。系统应具有学生学籍信息输入、删除和修改的功能,学生成绩信息亦是如此。系统的查询功能应较为

5、完备,不同的用户将登录到不同的主界面,进行不同的界面操作功能。能方便地进行相应数据的简单查询和任意字段组合的复合查询,改变以前只有专门人员才能进行数据查询的情况。系统应有学生数据安全保密措施,由于身份不同将登录到不同的主界面,高级的用户可以操作低级用户的信息,而低级用户之间互不能操作,保持了信息的安全性。但在需要时可由系统维护人员通过添加用户并授权来设置相应权限。在系统程序设计中应充分利用数据库服务器的处理能力,降低网络通信量,尽可能减少数据修改冲突,以最大程度地提高系统的执行速度和可靠性,真正起到提高工作效率的作用。2.2 系统可行性分析系统可行性主要包括3个方面:技术上的可行性、经济上的可

6、行性和管理上的可行性。首先,系统在技术上无论是硬件性能要求,还是软件性能要求,均可行。其次,从开发项目的成本与效益来看,系统开发的设备费用、运行费用、培训费用并不能过大,而通过系统的实施,一方面,提高了工作效率,将带来更多的经济效益;另一方面,系统所产生的间接效益也不容忽视。工作效率的提高可以节省人力资源,减轻了有关业务人员手工处理的工作负担,及时提供决策信息,促进业务的规范化、系统化、条理化和程序化。最后,科学的管理是建立管理信息系统的前提。管理人员支持本系统的研发运行,相应的管理制度改革的时机已经成熟,规章制度已经齐全,原始数据正确。随着时代的发展,人员素质已经逐步提高,不论是对于电脑系统

7、的基本操作还是对于系统的维护都有了一定的基础。同时还可以配置专业的电脑维护人员来维护电脑,不必担心电脑故障问题。3系统总体设计系统设计的任务是确定系统的数据模式、功能结构和系统结构,确定系统支持环境、实现方法和技术。系统设计的基本内容是:选择数据库管理系统,建立数据模式;选择系统支持环境,包括支持系统运行的硬件和软件要求,确定系统实现功能和方法以及选择系统的基本架构和技术。3.1 系统模块设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及他们之间的关系,为逻辑结构设计打下基础。这个阶段用到的工具是ER图(实体-联系图)。本系统E-R图如下: 学生实体E-R图3.2 数

8、据库设计3.2.1数据库逻辑结构设计逻辑结构设计的主要目标是将概念结构转换为一个特定的DBMS可处理的数据模型和数据库模式。该模型必须满足数据库的存取、一致性及运行等各方面的用户需求。该设计以概念结构设计中的E-R图为主要依据,设计出相关的整体逻辑结构。根据E-R图可知:学生信息(学号,性别,姓名,班号,入校日期,出生日期,联系电话,家庭住址,备注);3.2.2 数据库物理结构设计从一个满足用户需求的已确定的逻辑模型出发,在限定的软、硬件环境下,利用DBMS提供的各种手段设计数据库的内模式,即设计数据的存储结构和存取方法。数据库物理结构设计是对于给定的逻辑数据模型,选择一个适合的物理结构,主要

9、涉及存取方法与存储结构,它依赖于计算机系统。3.2.2.1关系模式关系数据库系统采用关系模型作为数据的组织方式,现在流行的数据库系统大都是关系数据库系统。通过对关系模式的优化,得到一个基本表。 学生信息表字段名字段类型长度主键或外键字段值约束对应中文属性名student_snovarchar50Primary KeyNot Null学号student_snamevarchar50姓名student_ssexvarchar50性别borndatevarchar50出生日期Classnovarchar50班号Nationvarchar50民族Sdeptvarchar50所在系addressvarc

10、har50地址3.2.2.2简单物理设计 在SQL Server 2014 中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。当在企业管理器中选择服务器和数据库文件夹,并打开已定义好的student数据库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。要建立各个表,选择student数据库中的表,单击鼠标右键,在弹出的菜单中选择“新建表”。 程序系统设计图如下: 4系统实现4.1 系统功能结构4.1.1功能模块说明1.管理员登陆界面。该界面可以输入管理员号,登陆密码。用户通过验证通过后方可进入管理系统。一定程度上保证了信息安全性,防止他人未经允许

11、篡改学生信息。2.查询学生信息。可以选择由用户选择“显示系统中当前的所有学生信息”。也可以选择按照“某一个学号查询该学号的学生信息”。查询到的信息会在窗口中依次显示出来。3.添加学生信息。可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。完成新纪录的添加。4.修改学生信息。可以选择按照“学号”或者“姓名”找到该学生的学生信息并输入要修改的属性,并输入新的数据。完成对学生记录的修改。5.删除学生记录。可以根据输入的“学号”或者“姓名”进行删除的操作。6.显示学生信息。可以显示所有学生的信息、以供查看。4.1.2功能设计与介绍1.添加学生信息2.修

12、改学生信息3.查询学生信息4.删除学生信息5.显示学生信息6.退出管理系统4.2 具体功能介绍首先,登录流程图如下所示:其次,函数之间的调用如下图所示: 失败4.2.1登陆界面登录界面输入“姓名”和“密码”,点击“Login”,通过验证则进入主功能菜单。如果输入错误则会有相应的警告!1.当输入一个错误时,会出现下图:2.登陆成功时会出现下图:4.2.2主功能界面1.显示点击,弹出如下窗口:2添加点击,弹出如下窗口:若输入的学号已经存在,则会弹出如下窗口:成功添加时会弹出:3修改点击并输入修改信息,若输入的学号不存在,则:输入要修改的正确学号,弹出如下窗口:4查询点击,弹出如下窗口:当输入的学号

13、不存在时,则:输入正确的学号时,则会弹出窗口:5删除点击,弹出如下窗口:当输入的学号不存在时,会弹出提示:当删除成功时,弹出窗口:6退出点击,退出学籍管理系统。5 主要程序代码及说明1.菜单部分代码:package XSXJGL;import java.awt.Container;import java.awt.LayoutManager;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.*;import javax.swing.JButton;import javax.

14、swing.JFrame;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class Menu JFrame jf; JButton j1,j2, j3, j4, j5,j6; public static void main(String args) Menu m =new Menu(); m.go(); public void go() jf=new JFrame(学生学籍管理系统); jf.setBounds(200, 200, 300, 200); Container cp=jf.g

15、etContentPane(); cp.setLayout(new FlowLayout(FlowLayout.LEADING,20,20); j1=new JButton(添加学生信息); j2=new JButton(修改学生信息); j3=new JButton(查询学生信息); j4=new JButton(删除学生信息); j5=new JButton(显示学生信息); j6=new JButton(退出管理系统); cp.add(j1); cp.add(j2); cp.add(j3); cp.add(j4); cp.add(j5); cp.add(j6); j1.addAction

16、Listener(new ActionListener() public void actionPerformed(ActionEvent e) new Add(); ); j2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Modify modify=new Modify(); ); j3.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Search searc

17、h=new Search(); ); j4.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Delete delete=new Delete(); ); j5.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) Display display=new Display(); ); j6.addActionListener(new ActionListener() publ

18、ic void actionPerformed(ActionEvent ae) System.exit(0); ); jf.setVisible(true); 2.登录部分代码:package XSXJGL;import java.awt.Dimension;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLa

19、bel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login public static void main(String args) final String userName = 1; final String passwrod = 1; final JFrame jFrame = new JFrame(登陆界面); Dimension dimension = Toolkit.getDefaultToolkit().g

20、etScreenSize(); jFrame.setBounds(int)dimension.getWidth() - 200) / 2, (int)dimension.getHeight() - 300) / 2, 200, 150); jFrame.setResizable(false); jFrame.setLayout(null); jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JLabel label1 = new JLabel(姓名); label1.setBounds(10, 10, 100, 30); jFrame

21、.add(label1); JLabel label2 = new JLabel(密码); label2.setBounds(10, 40, 100, 30); jFrame.add(label2); final JTextField text1 = new JTextField(); text1.setBounds(50, 15, 130, 20); jFrame.add(text1); final JPasswordField text2 = new JPasswordField(); text2.setBounds(50, 45, 130, 20); jFrame.add(text2);

22、 JButton button = new JButton(Login); button.setBounds(10, 75, 170, 40); button.addActionListener(new ActionListener() Override public void actionPerformed(ActionEvent e) if(userName.equals(text1.getText() & passwrod.equals(text2.getText() jFrame.dispose(); JOptionPane.showMessageDialog(null, 登陆成功,

23、提示, JOptionPane.INFORMATION_MESSAGE); jFrame.dispose(); (new Menu().go(); else JOptionPane.showMessageDialog(null, 错误, 提示, JOptionPane.ERROR_MESSAGE); text1.setText(); text2.setText(); ); jFrame.add(button); jFrame.setVisible(true); jFrame.setLocationRelativeTo(null); 3.连接数据库部分代码:package com.microso

24、ft.sqlserver.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import XSXJGL.Delete;public class myConnection static String url= jdbc:sqlserver:/localhost:1433;DatabaseName=XSXJGL; static String user

25、= sa; static String pw= sqlserverSa; static Connection conn ; public static Connection getmyConnection() try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); conn = DriverManager.getConnection(url,user,pw); return conn; catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLExce

26、ption e) / TODO Auto-generated catch block e.printStackTrace(); return null; 其他部分代码由于篇幅过长,不再赘述。6 课题总结通过本次课程设计,我巩固了所学到的知识,之前的学习只是停留在理论基础上,现在自己动手操作试验后,才是真正的理解及体会。数据库也学了一个学期,有很多知识都是似懂非懂,通过平时上机操作,自己也了解了一些,但仍有许多不理解的东西,这次的课程设计让我有了更深的理解和更好的认识。之前的困惑通过这次的课程设计也解决了一些,虽然还是不能够全面的理解,但是有进步就是收获。我初步学会了论文设计的基本方法,学会了怎

27、样去借鉴别人的方法和经验,知道了如何整合资料和处理这些资料的能力。在系统编译的时候会经常因为一些小的错误而心烦意乱,但是也不失为一件好事,失败的越多积累的经验也越丰富,也使自己的能力有了进一步的提高。由于知识和经验的不足,这个系统还是有许多需要改进的地方,以后我会更加努力的,在学习的过程中不断地提高和改进。加强了我关于理论联系实际、与具体课题项目结合开发、设计系统的能力。在本次课程设计中,我遇到了许多困难,在解决它们的同时收获颇多,特别是如何分析、建立、开发一个系统。我认识到在一个系统开发的过程中编码不是最重要的,重要的是系统分析并建立起系统模型。在分析一个系统之前,分析人员必须要对将要开发的系统所涉及到的各方面内容有一个总体的认识,并清楚该系统所要实现的功能。 有了这次的经验,以后在做类似系统时,一定在实现之前先设计周全,努力做到更完善,更好。参考文献: 1 彭东SQL Server 2005 应用开发技术指南北京:清华大学出版社2 夏邦贵SQL Server 数据库开发入门与范例解析北京:北京机械工业出版社3 岳付强等SQL Server 从实战到入门M北京:清华大学出版社,20094 李春葆Visual Basic 数据库系统设计与开发北京:清华大学出版社

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1