版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、(课程)毕业设计(课程)毕业设计 设计题目:设计题目: 基于基于 JAVAJAVA 的课程管理系统的设计与实现的课程管理系统的设计与实现 设计时间:设计时间: 学生姓名学生姓名学学号号 专专业业网络工程网络工程班班级级 08 08 技网络技网络 指导教师指导教师技术职称技术职称 20122012 年年 4 4 月月 20 20 日日 摘要 课程管理系统是一个学校中不可缺少的部分。课程管理系统应该能够为用 户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式对 课程进行查询、更新、选课等,这种管理方式存在着许多缺点,如:效率低、 执行速度慢,另外时间一长,将产生大量的文件和数据,这
2、对于查找、更新和 维护都带来了不少困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们 深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计 算机应用的一部分,使用计算机对选课信息进行管理,具有手工管理无法比拟 的优点。例如:检索迅速、查找方便、可靠性高、存储量大、成本低、效率高 等。这些优点能够极大地提高学生选课系统的效率,也是企业、学校的科学化、 正规化管理和与世界接轨的重要条件。因此,开发这样一套管理系统已成为很 有必要的事情。 JAVA 是一门很优秀的编程语言,具有面向对象、与平台无关、安全、稳定 和多线程等特点,是目前软件设计中极为健壮的编程语言。
3、 本文中介绍了用 JAVA 语言实现课程管理系统的全部过程。 关键词课程管理 / Eclipse / Java / SQL Server 目录目录 第一章 前言-4 第一节 开发背景-5 第二节 开发目标-5 第三节 项目意义-6 第二章 系统分析-7 第一节 需求分析-7 一 功能需求-7 二 性能需求-7 三 其他需求-8 四 业务流分析-8 五 数据流分析-8 第二节 可行性研究报告-8 第三节 数据库选择-9 第四节 运行环境-9 1 数据库应用系统开发简介-9 2mysql server 简介 -10 第三章 概要设计-11 第一节 功能模块划分-11 第二节 系统功能结构图-11
4、第四章 详细设计-13 第一节 系统 E-R 图示-13 第二节信息要求-15 第三节 模块设计-16 第四节数据表-17 第五章 数据库的实施和维护-20 一存储过程设计-20 二触发器设计-24 第六章 系统实现-26 一.用户登录界面-26 二. 登录到学生界面图-27 三.学生成绩查询-29 四教师管理页面-30 五.用户管理操作-31 六.学生信息管理-32 第七章 测试-36 结论-39 致谢语-39 参考文献-41 第一章 前言 数据库是从 60 年代初发展起来的计算机技术。经过四十来年的发展,数据 库技术己经趋于成熟。Web 数据库在新的 Internet 环境中发生了很大的变
5、化。 就数据应用而言呈现出多样化的空间,如数字图书馆、电子出版物、电子商务、 远程教育系统等的出现,给web 数据库技术提出了更多、更高的要求。同时,随 着国内高校校园网的建设, 基于互联网的应用系统的开发正在蓬勃发展并发挥着 较大的作用。例如,我国许多高校的网上招生系统,学校的各种管理信息系统, 学校选课系统,还有一些医学院校开发出的网上诊所、远程诊断系统等等,都是 基于校园网的应用系统。 国外的教学科研软件与国内相比开发的早而且比较成熟。早在七十年代末, 美国就建成了 NSFNET(国家科学基金网),其课题的申报及课题的进展情况汇报 都在网上进行。 其网上教学教务管理系统也十分完善,世界各
6、地的学生可以坐在 家里通过互联网完成入学报名、选课、考试、毕业论文、取得学位这一学习生活 的全过程。目前,国际上已具规模的远程教育学校就有数百所之多,网上教育正 在各地发挥着巨大的作用,为世界各国培养出大批人才。所有这些都表明,基于 Internet 的校园网的应用已深入到校园内的各个方面。 在高等学校的教务管理工作中, 课程表的编排是一项十分复杂、棘手的工作。 在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾,例 如: 两位教师不能同一时间在同一班级上课、一位教师不能在同一时间上两门课 等等。利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大 大减轻管理人员的
7、工作强度,提高工作效率,从而使学校教务管理现代化迈上了 一个新台阶。 我国不少高校都实行了学分制, 它的核心是允许学生自由选课,即把学习的 自主权交给学生。在这里,学生选课时的制约因素比较复杂,工作量也很大,而 且往往需要在较短的时间内完成。运用计算机辅助选课,即能实时地对大量选课 数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易 产生的错误。 从系统开发的复杂程度来看,计算机辅助排课与选课是高校教务系统中的两 个关键子系统, 目前不少教务系统尚未很好地解决排课与选课问题。本文主要对 高校教务管理系统中计算机课表编排与选课子系统的基本功能、设计思想、需求 分析以及实现技术
8、进行探讨。 我想大家肯定都经历过学生时代,也许很多人还对那个时候的选课记忆犹新, 每个学期都要排着长长的队伍去选。现在,我们已经进入到 Internet 时代了, 选课系统自然也要随着更新。大学中,公选课较多,学生可根据自己的专业及兴 趣选择公选课程进行学习, 本系统将从教学部门的要求出发, 实现公选课的选择、 查询与统计。 第一节 开发背景 当今时代是飞速发展的信息时代。 在各行各业中离不开信息处理,这正是计 算机被广泛应用玉信息管理系统的环境。 计算机的好处在于利用它能够进行信息 管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安 全性。 尤其对于复杂的信息管理, 计算
9、机能够充分发挥它的优越性。计算机进行信 息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统 就是为了管理学生课程选修信息而设计的。 学生选课作为一种信息资源的集散地, 包含很多的信息数据的管理。由于数 据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。 尽管有的学校有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置 比较突出,这就是管理信息系统的开发基本环境。 数据处理手工操作,工作量大,出错率高,出错后不易更改。造成时间上的 浪费,基于这个问题,是有必要建立一个课程管理系统,使学生选课信息管理工 作规范化,系统化,程序化,避免学生选课管理的随意
10、性,提高信息处理的速度 和准确性,能够及时,准确,有效的查询和修改选课情况。 第二节 开发目标 本系统根据学校实际项目要求及所针对的用户群体,预期制定出主要实现的 如下目标: 1. 网页风格学校平台的特点,界面简单大方。 2. 充分为用户着想,提供细致周到的技术支持。 3. 方便教师或管理员修改信息。 4. 为网站管理员提供方便、快捷的网站维护平台。 5. 严格限制不动的用户权限。 第三节 项目意义 课程管理系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管 理者来说都至关重要, 所以课程管理系统能够为用户提供充足的信息和快捷的查 询手段, 但是一直以来人们使用传统人工的方式管理文件档
11、案,这种管理方式存 在着许多缺点如: 效率低, 保密性差, 另外时间一长, 将产生大量的文件和数据, 这对于查找,更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深 刻的认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对课程管理信息进行操作,有着手工管理 无法比拟的优点:检索迅速,查找方便,可靠性高,存储量大,保密性好,成本 低等。这些优点能够极大的提高人事劳资管理的效率,也是企业的科学化,正规 化管理,与世界接轨的重要条件。 因此, 开发这样一套软件成为很有必要的事情,在下面的各章中我们将以开发一
12、套学生课程管理系统为例,谈谈其开发过程和所涉及的问题及解决办法。 本文所做的主要工作如下: 1. 介绍了个性化页面的背景及运用 java 语言和 eclipse 运行环境的原理。 2. 阐述整个系统的系统结构及工作原理,分析系统实现中的特殊性,难点和重 点。 3. 设计实现用户管理,课程管理,选课信息录入管理,新生信息录入管理,新 来老师信息录入管理和课程的浏览等页面。 4. 分析并解决实现中的若干技术问题。 第二章 系统分析 第一节 需求分析 在本系统进入开发阶段之前, 已针对课程管理系统的各方面因素做了综合的 构思;并仔细浏览了 Internet 上的多个网站,总结它们的优缺点,并调查其运
13、 行成本和成效; 同时认真的把自己对项目的想法告诉周围对此有兴趣的老师和同 学,听取他们的意见和建议。经过多方面的考核与研究,大致确定了学生选课测 试系统所需要满足的功能与性能: 一 功能需求 课程管理系统主要满足三方面的需求, 这三个方面分别是学生,教师和管理 员。学生的需求是查询院系的课程,学生选课情况及学生信息的修改;教师对学 生选课情况进行操作。 同时形成学生选课查看确认; 选课管理员的功能最为复杂, 包括对学生,教师,选课进行管理和统计,及系统状态的查看,维护并生成选课 报表。 学生可以直接查看选课情况, 学生可以根据本人学号和密码进行登录系统, 还可以进行本人学科成绩情况的查询和维
14、护部分个人信息。一般情况下,学生只 应该查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课信 息, 就要知道其他学生的学号和密码。 所以有了个人密码不但满足了学生的要求, 还保护了学生的个人隐私。 二 性能需求 一般用户并不具备计算机专业知识,若程序性能有一定的缺陷或可对其隐 藏,但一旦异常暴露,对于计算机专业知识较少的用户来说降一发不可收拾。对 于一个专业的开发人员来讲,其项目在满足用户提出的功能实现外,首先应保证 性能良好;对于一个基于 B/S 的项目,更要顾及当前各种先进的黑客技术,有备 无患!综上所属,本系统的性能需求大致如下: 系统的多数模块(尤其是后台几乎所有的)都有相
15、应的特殊操作,所以在进 入模块之前要对用户所具有的权限等用户信息做出严格检测,预防非法操 作。 数据库的连接应采用连接池技术,合理、有效的分配、回收资源。 系统运行过程中会产生许多异常(其中大多数是预期效果),要有良好的异 常处理机制,即要显示界面友好又要体现程序严谨。 学生在选修课程时教师会在后台严格控制,系统设计时要充分考虑到线程之 间的并发与冲突。 注重系统所需时间与空间上的资源消耗和运行效果。 三 其他需求 本系统有较好的可维护性、 可靠性、 可理解性、 效率。 易于用户理解和操作。 可维护性包括了可读性、可修改性、可测试性、等含义。可靠性通常包括正确性 和健壮性。开发过程中,在各种矛
16、盾的目标之间作权衡,并在一定的限制的条件 下(经费、时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。 四 业务流分析 课程管理系统的业务流程: 首先由系统管理员等有录入权限的用户将各自权 限范围内的信息进行录入,然后保存信息到数据库中。有权限的人可以对这些库 信息进行修改和删除。所有用户均可以进行信息查询和统计,有权限用户还可以 基于已有信息进行选修课程。 五 数据流分析 课程管理管理系统的数据流程: 首先由教师或系统管理员等有录入权限的用 户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。有权限的 人可以对这些库信息进行修改和删除处理。所有用户均可以进行信息查询和统
17、 计。 第二节 可行性研究报告 1. 技术可行性-本系统需要一台装有 java,eclipse 及 sql server 运行环 境的计算机即可,对机器本身没有太大的要求,一般当前学校或个人电脑完 全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,再运 用图形图像制作工具来制作生动活泼的网页。 2. 经济可行性-由于本系统是为学生选课管理使用的系统,装上该应用软 件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运 行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软件的 开发成本。在经济上完全可行。 3. 操作可行性-界面设计时充分考虑管理人员的习惯, 使
18、得操作简单;数据 录入迅速,规范,可靠,统计准确;制表灵活;适应力强;容易扩充。 第三节 数据库选择 在目前这种信息多元化,服务智能化的时代,应用软件往往与数据库形影 不离。碍于 JAVA 技术的跨平台特性,我们在实际应用中很少见到微软的数据库 产品要去搭配使用,而是 MySql 和 Orcale 居多,本项目最终决定选用 MySql 作 为后台数据库。 第四节 运行环境 鉴于数据库的选择,本系统仅能在 Windows 系统上运行,需装有 MYSQL。在 工程中,本系统采用 MyEclipse 作为开发及测试环境。 1 数据库应用系统开发简介 在数据库应用系统开发之前,对开发数据库的基本概念应
19、当了解,对数据 库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的 了解和认识。 数据库应用系统开发的目标是建立一个满足用户长期需求的产品。 开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。 把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。 数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于 60 年代, 30 多年来数据库技术得到了迅速发展, 并已形成较为完整的理论体系和一大批 实用系统。并且,近年来,随着 World Wide Web(WWW) 的猛增及 Internet 技术 的迅速发展,使得数据库技术之时成为最热门技
20、术之一。用户数据目前表明, 大多数主流数据库管理系统把用户数据表示为关系。现在把关系看作数据表。 表的列包含域或属性,表的行包含对应业务环境中的实体的记录。并非所有的 关系都同样符合要求,有些关系比其它关系更结构化一些。 2.mysql server 简介 MySQL 是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。 在2008年1月16号被Sun公司收购。 而2009年,SUN又被Oracal收购.对于Mysql 的前途,没有任何人抱乐观的态度.目前 MySQL 被广泛地应用在 Internet 上的中 小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这
21、一特 点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据 库。 第三章 概要设计 第一节 功能模块划分 功能划分: 学生通过身份验证后进入主界面。主界面为学生提供 3 项选择:选 择课程,查看成绩,用户管理。教师通过身份验证后进入主页面。 主页面为教师提供 4 项选择:开课信息管理,成绩录入,学生选课 确认。 功能描述: 学生: 选择课程: 给出可选课程和初选课程的列表, 可以在可选课程列表中选择任 一门所列课程,在初选课程中可以取消选择的课程。 查看成绩: 学生通过成绩按钮可以查询出自己已修学分等信息。 用户管理 修改登录密码。 管理员: 教师信息管理 可以添加,删
22、除教师的基本信息。 学生信息管理 可以添加,删除学生的基本信息。 教师: 授课信息管理 给出所有开设课程的列表,教师选择所教课程并设置学分,限 选人数,上课时间等信息。 成绩录入 录入学生选修课程的成绩 学生确认选课 根据学生班级编号,教师整理并确定学生选课生效 用户管理 修改登录密码。 第二节 系统功能结构图 系统的登录信息模块如图 3.1 所示: 在线选课系统 学生模块教师模块管理员模块 个选成个选成添 人课绩人择绩加 信课查信授录用 息程询息课入户 图 3.1 系统的前台模块如图 3.2 所示: 前台 管教学 理师生 员身身 身份份 份 删 除 用 户 第四章 详细设计 第一节 系统 E
23、-R 图示 1.分 E-R 图 学生信息 学号 班级 性别 生日 姓名 学生信息学生信息 E-RE-R 图图 教 师 编 号 教 师 姓 教 师 性教 师 生 教 师 信 所 在 院 教 师 职 教师信息教师信息 E-RE-R 图图 课 程 编 选 课 人 课 程 信 课 程 名 课 程 学 课程信息课程信息 E-RE-R 图图 学 生 成 学生课程成 课 程 编 学生成绩学生成绩 E-RE-R 图图 学 生 编 教师授课信 课 程 编教 师 编 号 教师授课信息教师授课信息 E-RE-R 图图 授 课 地 点 账户信息 账号密码 账户信息账户信息 E-RE-R 图图 2.总图 第二节信息要求
24、 1、系统总体数据流图如下: 进入选课执行教师功能 选课系统 学教 模块信息信息 用户模块 更新信息 管理 2、 管理员实现对教师、学生账号的更新以及设置开课: 用户账户表课程表 更新 登录更新 管理 身 份 验 退出 证 失败提示 3、学生选课、教师录入成绩等操作数据流如下: 账号密码表 学教 修 改 密 成绩 选课 查看 查看 成绩表 授课表 个人信息表课程表 第三节 模块设计 以下是系统的模块轮廓,在此我对自己负责的开课信息及用户管理模块进 行详细描述,其他模块由其负责的同学进行描述。 学生及教师信息模块 开课信息及学生信息模块 学生与成绩录入模块 管理员管理模块 开课信息及用户管理模块
25、主要有两个部分: 1.开课信息管理:给出所有开设课程的列表,教师选择所教课程并设置学分,限 选人数,上课时间等信息。 2.用户管理模块: 主要是学校管理工作人员的权限:学校工作人员有修改学生的 选课的权限,所以需要对工作人员登录本模块进行更多的考虑,在此系统中,学 校工作人员可以为学生加入选课或是登录记录, 并打印生成相应的报表给用户查 看。院系管理人功能的信息量大,数据安全性和保密性要求最高。本功能实现对 选课信息,教师信息,总体选课情况信息的查询和统计,工作人员和管理人员查 看及维护。学校管理员可以浏览,查询,修改,统计选课的基本信息。这部分功 能应该是由院系工作人员执行,但是,删除某条学
26、生选课基本信息记录时,应实 现对该学生选课的级联删除。 第四节数据表 1.系别信息表 学生信息表(stu_tab): 学生信息表主要用于存放学生类用户的基本信息。 包括学生学号 (stu_id) 、 学生姓(stu_name)、性别(stu_sex)、生日(stu_birthd)、班级(class)。 其中,stu_id(学生学号)字段作为主关键字。 字段名数据类型长度主键否是否为空 stu_idchar10主键不为空 stu_namechar10不为空 stu_tsexchar2不为空 stu_birthddatetime classchar16 教师信息表(tea_tab): 教师信息表用
27、于存放教师类用户的基本信息,包括教师编号(tea_id)教师姓名 (tea_name) 、 教师性别 (tea_sex) 、 教师生日 (tea_birthd) 、 教师职称 (post) 、 所在院系(department)8 项基本信息。其中,tea_id(编号)字段作为该表的 主键(primary key),惟一标识了一个管理员(教师)用户记录的信息。 字段名数据类型长度主键否是否为空 tea_idchar10主键不为空 tea_namechar10不为空 tea_sexchar2不为空 tea_birthddatetime postchar10 deptchar20 学生成绩表(s_t
28、able): 成绩信息表主要用于存放学生类用户的选课号所对应的选课成绩。包括课程 编号 (cou_id) 、 学生学号(stu_id )、 学生成 绩(score)3 个字段。 其中,cou_id(课程编号)与 stu_id(学生学号)作为主关键字。 字段名数据类型长度是否为空是否主键 cou_idchar16不为空主键 stu_idchar10不为空主键 scoreint 教师授课表(t_tab): 教师授课表用于授课课程号和地点。包括授课课程号(cou_id)、教师编号 (tea_id)、上课地点(location)3 个字段。其中,cou_id(授课课程号)、 tea_id(教师编号)作
29、为主关键字。 字段名数据类型长度是否为空是否主键 cou_idchar16不为空主键 tea_idchar10不为空主键 placeint 课程表(cou_table): 课程表用于存放课程各项信息。包括判课程编号(cou_id)、课程名称 (co_name)、学分(point)和选课人数(stu_num)4 个字段。其中,cou_id (课程编号)作为主关键字。 字段名数据类型长度主键否是否为空 cou_idChar16主键不为空 cou_nameChar16不为空 pointChar8不为空 stu_numInt不为空 所有用户账户表(logon): 统一记录管理员、教师和学生的账号密码,
30、包括账号(user_id)、密码 (password)、2 个字段。其中,user_id(账号)为主键。 字段名 user_id password 2关系模型 数据类型 char charr 长度 10 10 是否为空 不为空 是否主键 主键 第五章 数据库的实施和维护 一存储过程设计 1某个老师所有学生: create proc allstudent1 -某个老师所有学生 a char(10) as begin select x.stu_id,x.stu_name, t.cou_name,z.score from Stu_Table1 x,t_tab y,scroetable z,cou_t
31、ab t where x.stu_id=z.stu_id and y.cou_id=z.cou_id and t.cou_id=y.cou_id and y.tea_id=a end 2成绩录入参数是学生号,课程名,成绩: create proc inputPerform1-成绩录入参数是学生号,课程名,成绩 stuid char(10), cname char(16), crore char(2) as begin declare ab char(16) set ab=(select cou_id from cou_tab where cou_name=cname) update scroe
32、table set score=crore where stu_id=stuid and cou_id=ab end 3插入教师授课表参数是课程号,用户名,地点: use choose create proc insertteach1-插入教师授课表参数是课程号,用户名,地点 cou_id char(16), user_id char(10), divarchar(10) as begin insert into t_tab values(cou_id,user_id,di) end 4.显示所有的课程无参数: create proc AllCouse as begin select x.Co
33、u_ID,x.Cou_Name,x.Point ,y.Tea_Name,y.Post,z.Location,x.Stu_num from Cou_ x,Tea_tab1 y,T_tab z where x.Cou_ID=z.Cou_ID and y.Tea_ID=z.Tea_ID end 5.删除某个用户名,参数账号: create proc DeleteLogon(id char(10) as begin delete from Logon where User_ID=id end 6.删除某个学生,参数是学号: create proc DeleteStudent(id char(10)/
34、as begin delete from Stu_Table1 where Stu_ID=id end 7.删除某个教师,参数是教师号: create proc DeleteTeacher(id char(10) as begin delete from Tea_tab1 where Tea_ID=id end 8.插入用户表记录,参数是账号和密码: create proc InsertLogon(id char(10) as begin insert into Logon values(id,id) end 9.插入到学生表记录,参数学生好,学生名,性别,生日,班级: create proc
35、 InsertStudent(user_id char(10),username char(10),sex char(2),birth datetime,class char(10) as begin insert into Stu_Table1 values(user_id ,username,sex,birth,class) end return 10.插入到教师表记录,参数教师号,教师名,性别,生日,职位,院系: create proc InsertTeacher(user_id char(10),username char(10),sex char(2),birth datetime,
36、post char(10),department char(10) as begin insertinto values(user_id ,username,sex,birth,post,department) end return 11.判断学生是否存在,参数是学生号: create proc IsExistsStu(id char(10) as begin select * from Stu_Table1 where Stu_ID=id end 12.判断教师是否存在,参数是教师号: create proc IsExistsTea(id char(10) as begin select *
37、 from Tea_tab1 where Tea_ID=id end 13.显示所有学生: create proc ProcAllStu as begin select * from Stu_Table1 end 14.显示所有教师: create proc ProcAllTea as begin Tea_tab1 select * from Tea_tab1 end 15.判断账号是否存在,参数,账号和密码: create proc ProcLogon(user_id char(16),password char(10) as begin select * from Logon where
38、User_id=user_id and Password=password end return 16.修改密码参数账号,密码: create proc ProcModify(id char(10),password char(16) as begin update Logon set Password=password where User_id=id end 17.显示某个学号的信息,参数是学生号: create proc ProcStudent(id char(10) as begin select * from Stu_Table1 where Stu_ID=id end 18.插入选
39、课表记录,参数是课程号,学号,空值: create proc SelectCourse1(id char(10),cou_id char(16) as begin insert into S_table values(cou_id,id,null) end -19-查看某个学生的成绩,参数是学生号 create proc SelectedCourse(id char(10) as begin select * from S_table where id=Stu_ID end 20.查看某个学生已选课的成绩,参数,学生号: create proc SelectedCou_Num(id char(
40、10) as begin select COUNT(*) from S_table where Stu_ID=id end 21.查看某个学生的选课表,参数,学生号: create proc SelectedDetail(id char(10) as begin select x.Cou_ID,x.Cou_Name,x.Point ,y.Tea_Name,y.Post,z.Location,s.Score from Cou_ x,Tea_tab1 y,T_tab z,S_table s where id=s.Stu_ID and x.Cou_ID=z.Cou_ID and z.Tea_ID=y
41、.Tea_ID and x.Cou_ID=s.Cou_ID end 二触发器设计 1.对添加的人员进行存储: /*利用触发器为用户表初始化 *利用触发器为用户表更新, 每当有新的老师或是同学记录加入的时候,就在用 户表里面添加一条用户表记录*/ - create trigger insert_logon after insert on tea_table as begin declare a char(16) seta=(select tea_id from inserted) insert into logon values(a,a) End 2.存储完数据,生成一条记录: /*利用触发器实
42、现用户表的初始化 *利用触发器实现,每当有新的同学添加记录是,自动在用户表生成一条记录 */ reate trigger insert_logon1 afer insert on stu_table1 declare ab char(16) setab=(select stu_id from insered) insert into logon values(a,a) end 触发器名功能类型作用表 insert_logon教师表中有新的记录加入insertlogon 时,自动在用户表里生成一 条记录 insert_logon1学生表里面有新的记录加入insertlogon 时,自动在用户表里
43、生成一 条记录 第六章 系统实现 系统的实现是完全按照本文档的三、四章设计进行的,当然在设计过程中偶 尔也会遇到一些小的问题,但最终大都通过各种办法解决掉了。现将后台管理下 的各个模块的图示及类试图显现如下: 一.用户登录界面 图 5.1 二. 登录到学生界面图 图 5.2.1 系统给出了选课课程的明细课程名。 假如选择任何一门, 最多不能超过三门课程, 将会提示不超过好三门课或刚好三门课系统页面弹出提示“选课成功”,如下截 图: 图 5.2.2 点击“确定”,即可查看所选的课程,如下截图 图 5.2.3 系统给出了选课课程的明细课程名。 假如所选的课程超过三门课程,将会提示超 过三门系统页面
44、弹出提示“选课数目不能超过三门”,如下截图: 图 5.2.4 退课:把刚选的微机的课程退了 图 5.2.5 三.学生成绩查询 系统页面中间面板中给出了该学生选课的信息(课程号,课程名,分类,任课老 师,教师职称,上课地点,课程成绩),系统页面最下面列出了该学生该课程已 修学分,还需修学分,通过课程数,未通过课程数,截图如下: 图 5.3 四教师管理页面 图 5.4.1 教师可以对学生的成绩进行录入(此功能没实现,此成绩绑定在在节面),如下 截图: 图 5.4.2 五.用户管理操作 学生可在用户管理页面中修改自己登录系统的密码,截图如下: 图 5.5.1 学生可以对自己的密码进行修改,修改为点击
45、“确定”按钮,如如下截图: 图 5.5.2 教师可在用户管理页面中修改自己登录系统的密码,截图如下: 图 5.5.3 教师可以对自己的密码进行修改,修改为点击“确定”按钮,如如下截图: 图 5.5.4 六.学生信息管理 管理员由登录界面可以进入到管理员界面,如下截图: 图 5.6.1 在管理员界面中,管理员可以对学生信息的删除,添加,如下截图: 图 5.6.2(1) 图 5.6.2(1) 管理员由登录界面可以进入到教师信息管理界面,如下截图: 图 5.6.3 在管理员界面中,管理员可以对教师信息的删除,添加,如下截图: 图 5.6.4(1) 图 5.6.4(2) 第七章 测试 在这一节中,主要
46、讨论了两个问题,一个是系统的联机文档,另一个是系统 的测试,下面我们分别加以说明。作为一个完整的系统,联机文档是其中不可缺 少的部分也是相当重要的部分。 好的文档能够使用户快速了解并准确的使用系统 的各项功能。减少误操作,减少错误产生的可能,这对用户和开发人员都有很多 的好处。所以在开发本系统中,也加入了不少的文档,除了对于四大模块的详细 说明外, 对于易出错和不易操作的地方 (如多条件查询部分) 又作了详细的说明。 由于本身能力的局限性, 所以做编写的代码,即使经过反复检查也难免出错 所以在本阶段力求使用有限的时间找出尽可能多的错误,力求系统尽量正确。测 试中发现不晓得问题,有些问题还不能更
47、好的解决。 信息管理系统所涉及的数据库设计的重要步骤加载测试。 加载测试工作贯穿 于程序测试工作的全过程,整个录入、修改、查询、处理工作均可视为对数据库 的加载测试工作。要设计出一个好的信息管理系统数据库,除满足系统所要求的 功能外,还必须遵守下列原则:1)基本表的个数越少越好。2) 主键的个数越少 越好。键是表间连接的工具,主键越少,表间的连接就越简单。 3)字段的个数越 少越好。4) 所有基本表的设计均应尽量符合第三范式。数据库的设计中,如何 处理多对多的关系和如何设计主键, 是两个有着较大难度、 需要重点考虑的问题。 一.登陆模块测试 1教师用户测试: 输入数据:TeacherID= t
48、2012003 Tpassword=111 进入教师管理模块; 输入错误的信息如,TeacherID= t2012001 Tpassword=abcd 提示错误对话框,如 下截图: 2输入数据(正确数据):StudentID= s201089777 Spassword=111 正确数据,进 入学生选课模块; 输入数据(错误数据):StudentID= s201089775 Spassword=advsd 提示错误对话 框,如下截图: 二.学生选课模块测试 1 在学生选课界面使用图形界面选弹出成功对话框 2 重复选课弹出错误对话框(没有提示框) 三学生成绩查询模块测试 1 通过学生选课界面选择所
49、选课程 得到课程成绩信息 2 通过学生选课界面不选择课程将是空白状态 四 用户管理测试(修改密码) 1 输入数据:UserID=” a20098” Spassword2=111 成功修改密码 输入数据:Spassword=654321 Spassword2=111111 提示错误对话框 五 学生信息模块测试 1 在 GUI 界面依据班级号选择 输出:以列表形式显示学生基本信息 2 在 GUI 界面班级号为空 输出:空信息 3 在 GUI 界面添加新学生: 输 入 : StudentID=s11StudentName= 小 倩 StudentSex = 女 StudentBirthday=198
50、8-1-1Class=数控 1 班 输出:显示添加成功对话框 4 在 GUI 界面删除学生 输入:StudentID =s11 输出:删除成功对话框 结论 1.设计过程中遇到的问题以及解决方法 在建插入授课表的存储过程中,一直没有办法执行成功,一直出错感觉写的 代码又没有错,查了很久参数类型与表不一样,改成一样就可以了,在显示 全部课程的时候,刚开始一直显示不出来,以为是 java 代码写错了 返 回 结 果 集与表的长度不符合,修改下让返回结果集与表一样 2.设计过程的体会 该系统主要实现学生选课系统的功能,从数据库的分析设计,界面的设计, 数据库的连接,表格,存储过程,触发器的设计,我们学
51、到了很多东西,特别是 在是在数据库的设计和实现中,我们建了用户表 logon,学生表 stu_table,选 课表 selecttable,课程表cou_tab,授课表t_tab,教师表tea_tab,用户表示 用来存放登陆的账号和密码, 当学生表, 或是教师表中有新增了一条记录的时候, 都会自动插入到用户表里,密码初始化是和账号一样的,用户表里面有管理员账 号, 学生账号, 教师账号, 分别是以 a,s,t 开头, 管理员以有学生的添加与删除, 查看。教师账号可以查看个人信息,我的授课情况,录入成绩,修改密码。学生 账号可以查看个人的成绩,选课与退课,以及当前的选课情况,修改密码。管理 员账号在程序运行前就存放在用户表中, 学生表存放学生记录,课程表存放课程 记录,学生可以选课,并在选课表里面添加选课情况,教师表存放教师记录,教 师的授
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 单位管理制度呈现大全【人事管理】
- 三角形的面积推导课件
- 第4单元 民族团结与祖国统一 测试卷-2021-2022学年部编版八年级历史下册
- DBJT 13-317-2019 装配式轻型钢结构住宅
- 《电镀锡工艺学》课件
- 2024年大学生摄影大赛活动总结
- 《焊接基本知识》课件
- 中小学家长会122
- 美术:源起与影响
- 医疗行业专业技能培训体会
- 锅炉使用记录三张表
- 五年级上册书法教学设计-7《点与撇的分布》 湘美版
- 法院解冻协议书
- 《神笔马良》教学课件
- 产品安规认证知识培训课件
- 2023年湘潭市农村信用社(农村商业银行)招聘员工参考题库附答案解析
- 医院职能科室管理考核标准
- 小学道德与法治《读懂彼此的心》教案基于学科核心素养的教学设计及教学反思
- 意志力-Willpower教学讲解课件
- 2019年12月《危险化学品企业生产安全事故应急准备指南》
- 2023年食品微生物检验技能操作考核方案与评分标准
评论
0/150
提交评论