基于JSP的学生信息管理系统 毕业论文.doc_第1页
基于JSP的学生信息管理系统 毕业论文.doc_第2页
基于JSP的学生信息管理系统 毕业论文.doc_第3页
基于JSP的学生信息管理系统 毕业论文.doc_第4页
基于JSP的学生信息管理系统 毕业论文.doc_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学生信息管理系统 i 江西工业职业技术学院 毕业综合实践 课题名称: 学生信息管理系统 作 者: 学 号: 20103758 分 院: 电子信息工程分院 专 业: 计算机网络技术 指导老师: 专业技术职务 讲师 2013 年 3 月 18 日 学生信息管理系统 1 基于 jsp 的学生信息管理系统 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成 熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内 部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。 本文采用 jsp 和 ms sql-server 等软件为开发工具,以 windows xp(或 windows 2000) 为开发平台,设计出一个学籍管理信息系统,对学生的信息、课程、成绩进行统一管理,便于 查询、修改和删除。涉及到的主要内容有:体系结构规划、设计平台的搭建以及系统的设计。 主要实现的功能模块有管理系统的功能介绍子系统、新生入学子系统、学生成绩管理子系统、 在校学生管理子系统、离校学生管理子系统、各种信息查询子系统以及系统维护子系统。 该系统功能完善,可使高校的学籍管理系统从纯手工中解脱出来,实现高校学籍管理系统 自动化、规范化、合理化、科学化,其实用性强,用户界面友好,有助于加快高校的信息传递 和智能建设,并为高校整体实现信息化管理体系作好铺垫。 关键字:学生学籍管理; b/s;jsp;sql server 2000;jdbc-odbc; 学生信息管理系统 2 目 录 摘要 i abstractii 引言 .3 第一章 绪论 .4 1.1 选题背景和意义 4 1.3 系统开发技术 5 1.3.1 b/s 体系结构 5 1.3.2 sql server 2000 .6 1.3.3 jsp 技术 7 1.3.4 odbc 数据访问接口 .7 1.3.5 jdbc 数据访问接口 8 1.3.6 javascript .9 第二章 系统设计 .10 2.1 需求分析 10 2.1.1 运行环境 .10 2.2 系统总体设计 10 2.2.1 系统目标设计 10 2.2.2 系统设计思想 11 2.2.3 系统功能描述 11 2.2.4 系统用例图 .14 2.2.5 系统 uml 活动图 16 第三章 数据库设计 .18 3.1 总体表设计 18 3.2 数据库表的结构 .18 3.3 实体及 er 图 20 3.3.1 登录管理 20 3.3.2 实体的 er 图 21 3.4 数据库表的关系图 .23 3.5 数据库表的视图 .24 第四章 系统具体实现 .25 4.1 关键应用 .25 4.1.1 数据库连接 .25 4.2 登录管理 .28 4.3 菜单界面 .29 4.4 系统管理 .30 4.4.1 学生信息显示页面 .30 4.4.2 学生信息修改页面 .33 4.4.3 添加学生信息页面 .33 4.4.4 成绩查看页面 .34 4.5 课程管理 35 4.5.1 选修课表显示 .35 学生信息管理系统 3 4.5.2 选课情况页面 .36 4.6 学生管理页面 .37 4.6.1 学籍维护页面 .38 4.6.2 成绩查看页面 .40 4.6.3 学生选修课表页面 .40 4.6.4 所选的课程 .41 4.6.5 修改个人密码 .42 第五章 全文总结 .44 致 谢 .45 参考文献: .46 学生信息管理系统 4 引 言 进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。传统的单机版应用软件 正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新一代网络版应 用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户端服务器的 c/s 结构应用系统,这类软件具有结构严谨,运行效率高,服务器端压力小,安全性好等优点, 被广泛运用于局域网中。而另一种,也是本毕业设计所采用的,是称为浏览器服务器的 b/s 结构应用系统,它的特点是在客户端直接采用了功能强大的浏览器软件作为界面,其优点 在于软件开发效率高,客户端不受操作平台的限制、也不受地域的限制,网络传输量少,即适 用于局域网,更适用于 internet,而且投资小、见效快,用户可以不必进行服务器方面的投 资,而是去租用,甚至是免费使用 isp 的服务器资源,因而受到越来越多中小型单位的青睐。 本系统运用了 b/s 结构开发的。 学籍管理是学校教务的一项主要工作,它反映了一个学校的生源情况和学生的在校表现, 每一个档案都记录了一个学生在每个学校的一段历史,必须真实可信,所以档案管理工作是一 项严肃、认真而又繁琐的工作。本系统在认真研究国内外同类产品的基础上,博取众家之长, 并在多年从事学生档案管理专家的指导下开发而成,该系统适合各类中、小学校、职业技术学 校的学生学籍管理。 “学籍管理系统“从根本上解决了学校管理学生有关学生档案的烦恼,它 不仅让学校能够方便的录入学生学籍的基本信息,还能够方便查询、打印在校学生和历届已经 毕业了的学生学籍信息。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进 入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学生学籍信息进行管理,具有手工管理所无法比拟 的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这 些优点能够极大地提高学校管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条 件。 学生信息管理系统 5 第一章 绪论 1.1 选题背景和意义 随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能 适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校,总是走在科 技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要 环节,是开创学籍管理工作新局面的必由之路。 学籍管理指学校对学生所获得的学籍资格进行管理。凡经过升学考试或按规定 手续被正式录取的学生,入校办理注册手续后即取得该校学籍,它标志着学生取得 了参加学习的资格。学籍是组织管理学生的客观依据,但传统的学籍管理模式和管 理手段不仅大量地消耗人力、物力,同时,还存在诸多弊端,时常影响教学秩序, 阻碍教学改革的深化,难以保证该项工作应具有的严肃性。 当前,学生学籍管理的弊端主要表现在两方面:第一,工作繁杂、工作量大、 错误率高;第二,缺乏监督体系和控制手段:学籍管理的政策性很强,应该严格按 照上级部门的有关政策和规定办事,然而,由于传统的学籍管理模式缺乏有效的监 督措施,使有关部门的政策规定难以得到及时准确的贯彻执行,使学籍管理工作完 全失去了应有的严肃性,给学校的人才培养质量带来了严重的影响,也给社会带来 了很大的负面影响。 学生信息管理系统要实现的目标是为该校提供全面的学生学籍管理的解决方案, 以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极 大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。 具体目标如下: 1、提高学生学籍管理的效率,节约管理成本,增强学生管理的安全性。 2、满足教育管理单位、学生管理人员和学生的不同层次和不同方面的需要。 3、为学校将来的整体信息化建设提供必要的支持。 总之,通过该系统的建设来提高学校学生学籍管理效率,使得学校的发展能够 适应当前的教育信息化建设的总体发展趋势。 因此,开发一个功能完善、操作简单、界面友好、有针对性的学籍管理系统对 学校、乃至社会都是非常必要,非常有意义的。 学生信息管理系统 6 1.2 研究内容 系统由一台 web 服务器、sql server2000 数据库服务器和众多客户端工作站 构成,采用为 browse-server-database 三级框架结构,使用 jsp 编程,实现学籍管 理, 该系统有以下五个功能模块: 1、 系统管理员管理。该模块主要包括系统用户数据的录入、修改、删除等; 2、 学生信息管理。该模块主要包括以下几个子模块。 (1)浏览学生。可以查看学校总人数。 (2)修改信息。填写个人信息出错,可以通过该功能修改基本信息(可录入) 。 (3)添加学生。管理员通过该功能对新生的录入。 (4)删除学生。对历届毕业生(已毕业)的信息,先进行保存档案,再删除。 3、 课程信息管理模块。 (1)显示所有课程:该页面可以进行修改和删除。 (2)添加课程:管理人员对新加的课程进行录入。 (3)课程成绩查询:学生页面直接点查看成绩,就能显示个人成绩。管理员 通过输入学号查看成绩。 4、 选课情况管理。 该模块主要包括以下几个子模块: (1)显示选课:学生直接通过查看页面添加选修课(最多只能选 3 门课) 。管 理员通过查看选课可以进行修改和删除。 (2)查看选课:学生进入个人页面直接可以查看选修的课程。管理员通过输 入选修课的课程号来查看选课情况。 (3)添加选修课:管理员对新添加的课进行录入。 1.3 系统开发技术 本系统的设计综合应用了 b/s 体系结构、sql server 2000、jsp、odbc、jdbc 等技术。 由于客户服务器两层结构存在灵活性差、升级困难、维护工作量大等缺陷,已 较难适应当前信息技术与网络技术发展的需要。随着 web 技术的日益成熟, browse/server(简称 b/s)结构已成为取代 client/server(简称 c/s)结构的一种全 新技术。因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件研制 中一种流行的体系结构。 学生信息管理系统 7 1.3.1 b/s 体系结构 在 b/s 体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请 求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。b/s 结构简 化了客户机的工作,客户机上只需配置少量的客户端软件。服务器将担负更多的工 作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其 余如数据请求、加工、结果返回以及动态网页生成等工作全部由 web server 完成。 实际上 b/s 体系结构是把二层 c/s 结构的事务处理逻辑模块从客户机的任务中分离 出来,由 web 服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负 荷分配给了 web 服务器。这种三层体系结构如图 1 所示。 数据库 browse 浏览器 web 服 务器 图 1.3.1 三层体系结构 采用该结构软件的优势在于: (1)无须开发客户端软件,维护和升级方便; (2)可跨平台操作,任何一台机器只要装有 www 浏览器软件,均可作为客户机 来访问系统; (3)具有良好的开放性和可扩充性; (4)可采用防火墙技术来保证系统的安全性,有效地适应了当前用户对管理信 息系统的新需求。 这种三层结构层与层之间相互独立,任何一层的改变不影响其他层的功能。 三层 b/s 结构将应用的三个部分明确的分开:表示部分、应用逻辑部分、数据 访问部分。这三个部分在逻辑上独立的分开,分别加以实现,称之为:客户端、应 用服务器、数据库服务器。而在客户端和应用服务器之间加入一个 web 服务器,就 形成了一种特殊的 b/s 结构:browser/server,只在客户端安装浏览器软件即可。 客户端使用 internet explore 时,就可以让 internet explore 变成为能够处理数 据的应用系统。 由于这种模式是提供一个跨平台的、简单一致的应用环境,实现了开发系统与 应用系统的分离,因此避免了为多重不同的操作系统开发同一应用系统的重复操作, 便于用户群的扩展、变化以及应用系统的管理。 因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件开发中一 种流行的体系结构.所以在开发本系统时采用这种模式。 学生信息管理系统 8 1.3.2 sql server 2000 sql server 2000 具有较好的可伸缩性和可靠性,提供了以 web 标准为基础的 扩展数据库编程功能,可以满足电子商务和企业应用程序的要求。sql server 2000 支持 xml 和 internet 标准,具有基于 web 的分析能力,允许使用内置的存储 过程以 xml 格式存储、更新、删除、检索数据。 sql server 2000 能提供超大型系统所需的数据库服务。大型服务器可能有成 千上万的用户同时连接到 sql server 2000 的情况,sql server 2000 为这些环境 提供了全面的保护,具有防止问题发生的安全措施,例如,可以防止多个用户试图 同时更新相同的数据。sql server 2000 还在多个用户之间有效地分配可用资源, 比如内存、网络带宽和磁盘 i/o 等。 sql server 2000 不仅能作为一个功能强大的数据库服务器有效地工作,而且 数据库引擎也用在需要在客户端本地存储独立数据库的应用程序中。sql server 2000 可以动态地将自身配置成能有效地使用客户端桌面或膝上型电脑中的可用资 源,而不需要为每个客户端专设一个数据库管理员。应用程序供应商还可以将 sql server 2000 作为应用程序的数据存储组件嵌入到应用程序中。sql server 在网络 组件的顶部添加了服务器特有的中介组件,诸如开放式数据库连接(odbc)后能使不 同客户机进行相互连接,它可处理基于 internet 的应用程序,帮助用户把 sql server 数据库信息集成到 web 页面。 1.3.3 jsp 技术 jsp(java server pages)是 sun 公司推出的一种动态网页技术。jsp 技术是以 java 语言作为脚本语言的。作为采用 java 技术家族的一部分,jsp 技术能够支持 高度复杂的基于 web 的应用。 jsp 通过以下几个方面加以实现的: 1、简便性和有效性:jsp 动态网页的编写与一般的静态 html 的网页的编写是 十分相似的。只是在原来的 html 网页中加入一些 jsp 专有的标签,或是一些脚本 程序。这样,熟悉 html 网页编写的设计人员可以很容易进行 jsp 网页的开发。而 且开发人员完全可以不亲自编写脚本程序,而只是通过 jsp 独有的标签利用别人已 写好的部件来实现动态网页的编写。这样,不熟悉脚本语言的网页开发者,完全可 以利用 jsp 做出漂亮的动态网页。这在其他的动态网页开发中是不可思议的。 2、程序的独立性:jsp 是 java api 家族的一部分,它拥有一般的 java 程序 的跨平台的特性,换句话说,就是拥有程序的对平台的独立性。即:write once, run anywhere! 学生信息管理系统 9 3、程序的兼容性:因为 jsp 中的动态内容可以各种形式进行显示,所以它可 以为各种客户提供服务:从使用 html/dhtml 的浏览器,到使用 wml 的各种手提无 线设备(如移动电话和个人数字设备 pda) ,再到使用 xml 的 b2b 应用,都可以使 用 jsp 的动态页面。 4、程序的可重用性:在 jsp 页面中可以不直接将脚本程序嵌入,而只是将动 态的交互部分作为一个部件加以引用。这样,一旦这样的一个部件写好,它可以为 多个程序重复引用,实现了程序的可重用性。现在,大量的标准 javabeans 程序库 就是一个很好的例证。 jsp 语言的优点不言而喻,它对于用户界面的更新,其实就是由 web server 进行的,给人的感觉更新很快;所有的应用都是基于服务器的,所以它们可以时刻 保持最新版本;客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。 因此,本系统采用 jsp 语言开发。 1.3.4 odbc 数据访问接口 开放数据库互连(open database connectivity,odbc)是 microsoft 公司开 发的一套开发数据库系统应用程序接口规范,它支持应用程序以标准的 odbc 函数 和 sql 语句操作各种不同的数据库。在这一实现过程中,odbc 驱动程序起了关键 作用,简单地说,odbc 驱动程序相当于一个转换开关,它负责将应用程序发送来 的标准 sql 语句传递给各种数据库驱动程序处理,再将处理结构送回使用程序。于 是,应用程序开发者只须面对统一的 odbc 数据源,而不必针对各种数据库进行不 同的设置,这样的程序具备更好的适用性和可移植性,甚至可以访问多种不同的数 据库,如图 2 所示。 应 用 程 序 o d b c 驱 动 程 序 oracle 驱动程序 sqlserver 驱动程序 access 驱动程序 其他数据库驱动 orcale sqlserver access . 学生信息管理系统 10 图 1.3.2 odbc 工作原理 1.3.5 jdbc 数据访问接口 为支持 java 程序的数据库操作功能,java 语言采用了专门的 java 数据库编程接 口(java database connecivity,jdbc) ,用于在 java 程序中实现数据库操作功能 并简化操作过程。jdbc 支持基本 sql 语句,提供多样化的数据库连接方式,为各 种不同的数据库提供统一的操作界面。 jdbc 工作原理如图 3 所示。 应 用 程 序 j d b c 驱 动 程 序 管 理 器 jdbc 驱动程序 for oracle sqlserver 驱动程序 for db2 jdbc-odbc 桥驱动程序 jdbc 网络驱动程序 orcale db2 . odbc 连接的数 据库 图 1.3.3 jdbc 工作原理 1.3.6 javascript javascript 是一种基于对象(object)和事件驱动(event driven)并具有安全 性能的脚本语言。使用它的目的是与 html 超文本标记语言、java 脚本语言(java 小程序)一起实现在一个 web 页面中链接多个对象,与 web 客户交互作用。从而可 以开发客户端的应用程序等。它是通过嵌入或调入在标准的 html 语言中实现的。 它的出现弥补了 html 语言的缺陷,它是 java 与 html 折衷的选择,具有以下几个 基本特点: 是一种脚本编写语言 javascript 是一种脚本语言,它采用小程序段的方式实现编程。像其它脚本 语言一样,javascript 同样已是一种解释性语言,它提供了一个易的开发过程。 它的基本结构形式与 c、c+、vb、delphi 十分类似。但它不像这些语言一样, 需要先编译,而是在程序运行过程中被逐行地解释。它与 html 标识结合在一起, 学生信息管理系统 11 从而方便用户的使用操作。 基于对象的语言 javascript 是一种基于对象的语言,同时以可以看作一种面向对象的。这意 味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的 方法与脚本的相互作用。 简单性 javascript 的简单性主要体现在:首先它是一种基于 java 基本语句和控制流 之上的简单而紧凑的设计, 从而对于学习 java 是一种非常好的过渡。其次它的变 量类型是采用弱类型,并未使用严格的数据类型。 安全性 javascript 是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存 入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览 或动态交互。从而有效地防止数据的丢失。 动态性 javascript 是动态的,它可以直接对用户或客户输入做出响应,无须经过 web 服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动, 就是指在主页(home page)中执行了某种操作所产生的动作,就称为“事件” (event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后, 可能会引起相应的事件响应。 综合所述 javascript 是一种新的描述语言,它可以被嵌入到 html 的文件之 中 javascript 语言可以做到回应使用者的需求事件 (如: form 的输入) ,而不 用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给 伺服端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用 程式所处理。 第二章 系统设计 2.1 需求分析 本系统主要是针对各个高校的学生学籍进行管理,系统满足以下几点要求: 系统安全性。由于此系统中的操作都是由用户操作的,所以对于用户的权限设 置比较严格。对于数据库,设置了不同用户的权限,不同权限进入不同的界面,为 学生信息管理系统 12 了防止数据的并发现象的出现,数据的编辑必须由合法用户来操作,并且对于管理 员来说,只允许对自己管理的信息进行编辑,无权对其他用户管理的信息进行编辑。 系统内容的全面性。学生信息管理系统不仅是对学籍的一些基本管理,而且还 对学籍的维修、删除各方面都有很好的管理,并且不同的管理权限可操作的内容也 是不同的,因此,本系统能够很好的满足管理人员的需要,使个人用户可以快捷、 简便、安全地使用本系统。 可扩展性。站点的数据承载量、功能模块的单个或整体调整都可以满足变化的 需要,这种适应性称为可扩展性。学籍管理系统的可扩展性,体现在不同用户需要 处理不同类型的数据、数据与用户之间进行交互、数据要符合个人用户的使用需求、 多表查询系统化、避免性能下降等方面。 易维护性。本系统采用 b/s 结构,系统的升级只需要在服务器端完成,更新软 件系统的数据库、文件也只需要更新服务器端即可。在进行系统的维护时,只需要 远程登录服务器系统,减少了维护系统的成本和周期。 2.1.1 运行环境 硬件配置: cpu:2.26ghz; 内存:256m; 硬盘:80g; 软件配置: 操作系统:windows xp/windows 2000; 数据库:sql server 2000; jsp 服务器:tomcat; 开发工具:jbuilder x。 2.2 系统总体设计 2.2.1 系统目标设计 学籍管理信息系统以计算机为工具,把学籍管理系统更完善,通过对教务管理 所需的信息管理,减轻行政人员的工作负担,使教学办公室对学生档案的管理更方 便,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管 理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教 学质量。计算机的资源是受到限制的,因此要充分利用 jsp 的功能,设计出功能强 学生信息管理系统 13 大的软件,同时要尽可能减少对系统资源的占用,同时对本系统要求有良好的保密 2.2.2 系统设计思想 学籍管理系统主要实现的是对学生的学籍、选修课、基础课程和成绩的管理。 首先,对用户设置不同的权限,根据不同的权限进入不同的页面。其次,对于所输 入的用户名和密码进行判断。最后,成功登录的话:1、如果是学生页面,登录到 个人管理页面,其中包括学籍维护、选修课表、所选课程、成绩查询、密码修改。 2、如果是管理员页面,管理员可以对出错学生信息进行修改,对选修课程的添加、 修改、删除,以及对基础课程的添加、修改、删除。也可以通过查看成绩,显示所 有学生成绩,或所有选修了该课程的学生。 2.2.3 系统功能描述 本系统功能主要划分学生操作管理、管理员操作管理 2 大模块。其中学生操作 模块包括学籍维护、选课管理、成绩查询、修改密码这几个小模块。管理员操作包 括后台学生信息管理、选修课程信息管理、基础课程信息管理、成绩这几个小模块。 系统根据登录用户的身份,进入不同的界面,进行不同的功能操作。系统的 2 个大 模块划分如图 2.1 所示。 学生信息管理系统 学生操作管理 管理员操作管理 图 2.2.1 系统的 2 大模块划分图 1、 学生操作管理包括以下几个模块,如下图所示: 学生操作管理 学籍维护 选课管理 成绩查询 修改密码 学生信息管理系统 14 图 2.2.2 学生操作管理系统 在学生操作管理系统中,方便学生在网上查询个人信息、成绩、查看公告以及 维护个人信息。下面具体介绍每个子功能模块。 学籍维护:该模块包括不可录入的基本信息和可录入的基本信息,学生可以核 对不可录入的信息,对于有错的信息可以通过管理员来修改。其它可录入的信息, 学生可以进行修改,提交后数据库更新相关信息。此模块完成的就是学生个人信息 的查询、更新这些维护管理操作。 选课管理:该模块又包括选修课表和所选课列表。选修课表列出了所有开设的 课程,同时列出授课教师,上课时间,教室等这些数据项信息。学生点课程列表前 面的添加,就可以添加自己喜欢的课程,每位学生最多只能选 3 门课,超过 3 门或 者重复选课都会弹出错误提示框,学生如果想换课程,可单击所选课程前面的删除, 重新选择课程。 成绩管理:添加此模块,可以方便学生在网上直接查看自己的成绩,不用特意 到学校去咨询,或等待邮寄信。这样不紧方便了学生,也减轻了教务处的负担,也 正是该系统方便、快捷、及时的特点。 修改密码:由于一开始,所有学生的密码都是统一的,为了维护个人信息,每 个学生可以通过该功能进行密码修改。 2、 管理员操作管理包括下面几个子模块,如下图所示: 管理员操作管理 学生信息管理 选修课程管理 基础课程管理 查看成绩管理 图 2.2.3 管理员操作管理系统 在管理员操作管理中,管理员对学生信息的修改、添加、删除,对课程的 修改、添加、删除。下面具体介绍各个功能模块。 学生信息管理:在该页面,管理员可以进行添加、修改、删除,具体为对出错 学生信息的修改,对新生的录入,对已经毕业了的学生,删除有关他们的相关信息。 学生信息管理系统 15 选修课程管理:管理员根据每个学期的变动,添加或删除相应的课程,也可以 对出错信息进行修改。在该模块,管理员还可以查看学生选课情况,输入学号查看 该学生选课情况,输入课程号查看选修了该课程的所有学生。 基础课程管理:根据每个学期所学课程的不同,管理员可以对课程进行添加、 修改、删除操作。 查看成绩管理:可以精确查找学生成绩,也可以通过输入课程,查看该课程所 有学生的成绩,以便进行学生的排名。 通过上面的介绍,基本确定了系统总功能结构图,如下图所示: 学生信息管理系统 学生操作 管理员操作 学籍维护 修改密码成绩查询选课管理 学生信息 选修课程 查看成绩 课程列表 所选课程 修改信息添加学生 删除信息 添加课程添加选课 修改删除 基础课程 修改删除课程 图 2.2.4 学生信息管理系统总功能结构图 2.2.4 系统用例图 用例图确定系统中所包含的参与者、用例和两者之间的对应关系,用例图描述 的是关于系统功能的一个概述。系统分为学生登录和管理员登录,下面分别对其进 学生信息管理系统 16 行用例分析。 1、学生用例分析以及下图 登录:学生登录后才能进行关于本人信息等的一些操作。 密码修改:每位学生的初始密码都是相同的,因此学生登录后要修改系统登录 密码。 任选课表:网上选修自己感兴趣的课程。 查看已选课程:查看自己选修的课程,并可以退选。 学籍维护:网上维护和管理自己的信息,当信息有变更时可以及时的更新。 成绩查询:及时的了解到自己每学期的学习成绩。 修改密码 查看学籍信息查看选修课表 修改学籍信息 选修课程 成绩查询 修改选修课 退出系统 图 2.2.5 学生用例图 2、管理员用例图以及下图 登录:输入正确的用户 id 和密码后才可以登录到后台进行管理操作。 密码修改:管理员修改自己的密码。 学生信息管理:对学生信息进行修改、删除操作。 学生信息添加:对新生的录入。 课程列表管理:增添、修改、删除课程。 选课学生查询:查询每门课程被选修的具体的学生信息。 学生成绩管理:查看个人成绩,也可查看该课程所有学生成绩。 学生信息管理系统 17 查看学生信息 添加新学生 删除学生 查看选修课 删除选修课 添加选修课 查看选课情况 查看必修课 删除必修课 查看成绩添加必修课 退出系统 图 2.2.6 管理员用例图 2.2.5 系统 uml 活动图 学生信息管理系统 18 图 2.2.7 系统 uml 活动图 系统主页 选定登入模块 学生操作 修改密码 学籍维护 选修课程 查看成绩 学生管理 选课管理 基础课管 理理 管理员操作 查看成绩 理理 学生信息管理系统 19 第三章 数据库设计 在本系统中使用的是 sql server2000 数据库管理系统。本系统使用的数据库 名为 tong,下面具体讲解数据库中各数据表的创建和逻辑结构。 3.1 总体表设计 该系统中共需要创建 6 个数据表,依次是: admin 表:记录管理人员信息 student 表 :记录学生信息 chengji 表:记录基础课程信息 kecheng 表:记录选课信息 成绩关联表: 记录学生基础课程成绩 选课关联表:记录学生选课信息 3.2 数据库表的结构 表 3-1 admin 表的定义 字段名 字段描述 是否为主 键 数据类型 长度 约束 说明 name 管理员姓名 是 char 20 not null 惟一标识 sex 性别 否 char 10 age 年龄 char 10 tel 电话 char 20 email 邮箱 50 address 地址 50 ad_password 密码 50 not null 学生信息管理系统 20 表 3-2 student 表的定义 字段名 字段描述 是否为主 键 数据类型 长度 约束 说明 stu_name 姓名 不是 char 20 not null stu_id 学号 是 char 10 not null 惟一标识 stu_passwo rd 密码 varchar 50 not null sex 性别 char 10 not null dept 专业 char 25 not null mz 民族 char 25 not null zzmm 政治面貌 char 20 not null zym 曾用名 char 25 sfz 身份证 varchar 50 age 年龄 char 20 jg 籍贯 varchar 50 jkzk 健康状况 char 25 rxdate 入学时间 char 20 jtdz 家庭地址 varchar 50 jtdh 家庭电话 char 20 yzbm 邮政编码 char 15 brlsfs 本人号码 char 15 email 邮箱 varchar 50 qtlxfs 其他联系 char 50 bz 备注 char 50 表 3-3 chengji 表的定义 字段名 字段描述 是否为主键 数据类型 长度 约束 说明 xqh 学期号 不是 char 20 not null kch 课程号 是 varchar 50 not null 惟一标识 kcm 课程名 char 20 not null xf 学分 char 20 zjjs 主讲教师 char 20 学生信息管理系统 21 表 3-4 kecheng 表的定义 字段名 字段描述 是否为主 键 数据类型 长度 约束 说明 kch 课程号 是 varchar 50 not null 惟一标识 kcm 课程名 varchar 20 not null rkjs 任课教师 varchar 20 not null xqj 星期几 varchar 20 sj 时间 varchar 20 skjs 上课教室 varchar 20 表 3-5 成绩关联表的定义 字段名 字段描述 是否为主键 数据类型 长度 约束 说明 id 自动编号 是 int 4 not null 惟一标识 stu_id 学号 varchar 50 not null 外键 kch 课程号 varchar 50 not null 外键 成绩 成绩 char 20 重修成绩 重修成绩 char 20 表 3-6 选课关联表的定义 字段名 字段描述 是否为主键 数据类型 长度 约束 说明 id 自动编号 是 int 4 not null 惟一标识 stu_id 学号 varchar 50 kch 课程号 varchar 50 3.3 实体及 er 图 3.3.1 登录管理 实体介绍 本系统中的实体共有 4 个,分别为: 实体 1: 学生(姓名 stu_name,学号 stu_id,密码 stu_password,性别 sex, 专业 dept,民族 mz,政治面貌 zzmm,曾用名 cym,身份证 sfz,出身日期 age,籍 学生信息管理系统 22 贯 jg,健康状况 jkzk,入学年份 rxnf,家庭地址 jtdz,家庭电话 jtdh,邮政编 码 yzbm,联系方式 lxfs,email email,备注 bz); 关键字为:学号 stu_id 实体 2:选修课(课程号 kch,课程名 kcm,任课教师 rkjs,星期几 xqj,时 间 sj,上课教室 skjs) ; 关键字为:课程号 kch 实体 3:基础课(学期号 xqh,课程号 kch,课程名 kcm,学分 xf,主讲教师 zjjs) 关键字为:课程号 kch 实体 4:成绩(id,学号 stu_id,课程号 kch,成绩,重修成绩) ;关键字为: id 3.3.2 实体的 er 图 实体 1 的 er 图: 学生 姓名 学号 密码 性别 专业 民族 政治面貌 曾用名 身份证 出生日期 健康状况 籍贯 入学年份 家庭地址 联系方式 图 3.3.1 实体的 er 图 实体 2 的 er 图: 学生信息管理系统 23 选修课 课程号 任课教师 星期几 时间上课教室 课程名 图 3.3.2 实体 2 的 er 图 实体 3 的 er 图: 必修课 课程号 课程名 主讲教师 学分 学期号 图 3.3.3 实体 3 的 er 图 实体 4 的 er 图: 成绩 学号 课程号 成绩 重修成绩 id 图 3.3.4 实体 4 的 er 图 学生信息管理系统 24 各个实体之间的关系图: 图 3.3.5 各个实体之间的关系图 3.4 数据库表的关系图 在学籍产管理系统中,涉及到 5 个数据表的操作,其中有些表会与多个表有 关联,但结构比较明晰,各表的关系如下图: 图 3.4.1 关系图 学习 必修课 学生 选修选修课 课 学生信息管理系统 25 3.5 数据库表的视图 系统通过建立视图来进行查询,如下是查看的视图: 图 3.5.1 视图 学生信息管理系统 26 第四章 系统具体实现 4.1 关键应用 4.1.1 数据库连接 jdbc 是 java 数据库连接(java data base connectivity)技术的简称,是为 各种常用的数据库提供无缝连接的技术。jdbc 定义了 java 语言同各种 sql 数据之 间的应用程序设计接口(api) ,提高了软件的通用性。 jdbc 的关键技术是数据库连接驱动程序,针对这点大量的数据库厂商和第三 方开发商支持 java 的 jdbc 的标准,并开发了不同的数据库 jdbc 驱动程序。这些 驱动程序可以分成四种:jdbc-odbc bridge 驱动程序、jdbc native bridge 驱动 程序、jdbc-network bridge 驱动程序、pure java jdbc driver。 其中,我采用 jdbc-odbc bridge 驱动程序来连接数据库,步骤如下: 1、将 sql server 2000 改为“sql server 和 windows”方式登录; 2、建立访问系统 dsn112 数据库用户; 3、建立 odbc 数据源(系统数据源名称为 dsn112) ; 4、编写 jsp 程序连接数据库代码: package proj112; import java.io.*; /import javax.servlet.http.*; import java.sql.connection; import java.sql.drivermanager; import java.sql.preparedstatement; import java.sql.resultset; import java.sql.sqlexception; import java.sql.statement; public class dbconn /建立一个联接机 string url=“jdbc:odbc:dsn112“; /建立 一个 odbc 源 connection con=null; 学生信息管理系统 27 /connection 对象 resultset rs=null; /建立一个记录集 preparedstatement prepstmt = null; string username = “sa“; string password = “; public dbconn() try class.forname(“sun.jdbc.odbc.jdbcodbcdriver“); /用 classforname 方法加载驱动程序类 catch(java.lang.classnotfoundexception e) /当没 有发现这个加载这个类的时候抛出的异常 system.err.println(e); /执行 系统的错误打印 public resultset executequery(string sql) /可以 执行添加删等操作 try con=drivermanager.getconnection(url,username,password); statement stmt = con.createstatement( resultset.type_scroll_sensitive, resultset.concur_read_only); rs=stmt.executequery(sql); catch(sqlexception er) system.err.println(er.getmessage(); return rs; public int executeupdate(string sql) /数据 学生信息管理系统 28 库的更新操作 int result=0; try con=drivermanager.getconnection(url,username,password); statement stmt=con.createstatement(); result=stmt.executeupdate(sql); catch(sqlexception ex) system.err.println(ex.getmessage(); return result; public void close() try if(con!=null) con.close(); catch(exception e) system.out.print(e); try if(rs!=null) rs.close(); catch(exception e) system.out.println(e); public preparedstatement preparedstatements(string sql) try con=drivermanager.getconnection(url,username,password); prepstmt = con.preparestatement(sql); /preparedstatement prepstmt = null; catch(sqlexception ex) system.err.println(ex.getmessage(); 学生信息管理系统 29 return prepstmt; /* public static void main(string args) try conndb db = new conndb(); /db.executequery(“select * from student_info“; resultset rs = db.executequery(“select * from student_info“); while(rs.next() system.out.println(rs.getshort(1); system.out.println(rs.getstring(2); /system.out.println(“连接数据库成功!“); catch(exception e) e.printstacktrace(); */ 学生信息管理系统 30 4.2 登录管理 图 4.2.1 系统登录界面 说明:用户只需要填写登录帐号和密码,后台会判断用户的权限从而进入不同 的操作页面。 当输入的用户名或密码有错,显示提示框,如下图所示: 学生信息管理系统 31 图 4.2.2 用户名或错误界面 4.3 菜单界面 登录用户设置了两个权限(系统管理员、学生用户) ,不同的权限进入不同的 操作界面。下面是系统管理员的操作界面,分为三个功能模块: 1、学生模块:该模块包括三个子模块,管理员可以对新生的录入,对在校学 生信息的修改,以及对毕业学生的删除。要精确查找学生,可以输入学号,查找到 相应学生信息。在查看成绩这一子模块,你可以输入学号,查看该学生所有课程成 绩,或输入课程号,查看该课程所有学生成绩情况。 2、课程模块:该模块包括五个子模块。在查看选修课表页面,管理员可以对 课程进行修改,对每个学期所选课程的不同,进行添加、删除操作。在选课情况页 面,进行两个操作,输入学号可以查看该学生选课情况;输入课程号,可以查看选 修了该课程的所有学生,以便进行统计。基础课表页面显示所有课程信息,根据每 个学期课程的变动,进行添加、修改、删除操作。 3、帮助中心:包含两个子模块。管理员可以对个人登陆的密码进行修改,或 退出该管理员页面。 学生信息管理系统 32 图 4.3.1 系统管理员操作页面 4.4 系统管理 4.4.1 学生信息显示页面 在此页面既可以查询到学校所有学生信息,也可以在此编辑学生的一些信息, 比如增加、修改、删除学生信息。 学生信息管理系统 33 图 4.4.1 管理员管理页面 以下为修改代码:change.jsp 修改学 学生信息管理系统 34 生信息 姓名: 学号: 性别: 专业: 民族: 政治面貌: edit.jsp 4.4.2 学生信息修改页面 管理员可以在此删除用户、添加用户,也可以修改用户的一些信息,点击修改 按钮后将进入到新页面进行信息修改。 图 4.4.2 修改学生信息界面 学生信息管理系统 36 4.4.3 添加学生信息页面 管理员在此可以添加、修改、删除,点击添加按钮后将进入到添加页面。 图 4.4.3 添加学生页面 4.4.4 成绩查看页面 可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论