《选课说明书-学位论文.doc》由会员分享,可在线阅读,更多相关《选课说明书-学位论文.doc(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、内蒙古工业大学本科毕业设计说明书学校代码: 10128学 号: 040201075 ( 本科毕业设计说明书题 目:基于C/S的选课教务系统的应用与开发学生姓名:孙 文 礼学 院:信息工程学院系 别:计算机系专 业:计算机科学与技术班 级:计算机04-2指导教师:邢 红 梅 讲 师李 爽 工 程 师二 八 年 六 月摘 要目前国内各高校的规模越来越大,进而造成教师教学管理等工作量日趋加大。然而,现代教育的信息化、网络化已经成为教育发展的一个重要方向,同时也为解决高校教学管理效率低下的现状,使管理突破时空限制,提高工作效率和办学水平,提供了一个很好的突破口。基于这种情况,选课系统应运而生。本系统总
2、体上分为三大模块:学生模块、教师模块和管理员模块,并由此扩展出学生管理员和教师管理员用户进而组成本系统的五大用户,实现了学生选课、教师添加课程和管理员添加用户等诸多相关功能的操作。本系统是一个典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立一个数据一致性、完整性、安全性好的数据库,而对于后者则要求应用程序具有功能完备,易使用等特点。本系统的实现是基于Oracle数据库之上,采用IBM为JAVA设计的图形编程技术Swing,底层使用JDBC(Java DataBaseConnectivity)连接Oracle数据库。关键词:选课;
3、课程管理;用户管理AbstractPresently, with the increasing fast development of universities, the workload of teaching management has become more and more. However, information and networkhas become an important direction of the development of modern education. It provides a quite good breakthrough for resolvin
4、g higher education problems that generally lie in low efficiency of the teaching and management at school. And it has provided a breakthrough in time and space constraints for management, improved efficiency of our normal working and teaching. Because of these, this course-selecting system is design
5、ed.The whole system is divided into three modules: student Module、teacher and administrator module. Then it extends to student administrators and teacher administrators module. Finally, the system includes five group of users. The design is aimed to assistant students to select courses, teachers to
6、add courses, and managers to add users, etc.The system is a typical management information system (MIS), including its database background establishment and maintenance, and front-end application development. With regard to the former, data consistency、integrity and security are requested. For the l
7、atter, the complete application program function is needed. The system is based on the Oracle database, using IBMs graphic design for JAVA programming technology, Swing, and JDBC (Java DataBaseConnectivity) to connect the Oracle database. Keywords:course selection; course management; user management
8、目 录内蒙古工业大学本科毕业设计说明书引 言1第一章 系统使用的技术概述31.1 C/S与B/S模式31.2 Swing技术简介41.3 JDBC技术简介51.4 Oracle数据库简介6第二章 系统分析82.1 应用需求分析82.2 系统功能需求82.3 系统性能需求92.4 业务流分析9第三章 系统详细设计103.1 系统介绍103.2 数据描述103.2.1 类图103.2.2 用例图113.3 数据库设计133.3.1 数据库需求分析133.3.2 数据项和数据结构133.3.3 数据字典(DD)14第四章 选课教务系统的实现164.1 学生模块164.2 教师模块184.3 管理员模
9、块204.4 学生管理员模块244.5 教师管理员模块25结 论26参考文献27谢 辞28图表清单图3-1 系统主要类图11图3-2 学生、教师用户用例图11图3-3 管理员用例图12图3-4 学生管理员用例图12图3-5 教师管理员用例图13图4-1 学生登录16图4-2 学生选课16图4-3 学生下载课程17图4-4 学生修改个人信息17图4-5 学生查看已选课程18图4-6 学生修改密码18图4-7 教师课程管理19图4-8 教师课程信息19图4-9 教师修改密码20图4-10 管理员列出所有用户20图4-11 管理员强制修改用户密码21图4-12 管理员添加用户21图4-14 管理员删
10、除用户后22图4-15 修改为管理员23图4-16 修改为教师23图4-17 修改为学生24表3-1 学生信息表14表3-2 课程表14表3-3 选课信息表15表3-4 用户表15表3-5 教师信息表15引 言随着我国教育的快速发展,办学规模不断扩大,教学资源明显紧缺,使教务管理部门的任务越来越重。这不仅体现在工作量的大幅增加,而且也体现在了工作难度的增大,如果管理稍不到位,便容易出现失误。而在高校中,教务管理工作具有举足轻重的作用,教学质量直接取决于教务管理水平。因此为了适应目前信息时代对管理的制度化、程序化、标准化等要求,建立一套界面友好、易学习、非计算机专业人员经过短时间培训即可掌握,符
11、合教育特点的信息化管理系统是非常有必要的。现在,各高校己经将计算机技术引入到教务管理工作中来,各系部和教务处都配备了计算机,并尝试着应用计算机对学籍、成绩等进行管理。校园网己经建成或正在建设完善之中,各高校教务管理网络化的建设加快了步伐,一些和教务有关的软件正在引进和建设之中,其中较为突出的有清华大学、浙江大学等高校研制开发的针对高校普通教育的教务管理系统。这样,既清晰地划分了各职能部门的工作范围,又减轻了学院教务人员的工作负担,更主要的是为管理者提供了及时、准确、全面而适用的数据,并将工作人员从繁琐的手工劳动中解放出来,减轻工作人员的劳动强度,提高工作效率,从而提高整个学校教务管理工作的水平
12、。由于全国高校的教务管理没有统一的模式,所以引进的教务管理软件将不具有针对性,也很难保证它的通用性和适用性,这个问题是教务管理人员在实践中必须认真考虑和解决的问题。教务管理系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,而作为教务管理系统的一个重要组成部分的学生选课系统就应该能够为教师和学生用户提供相应的课程操作与查询信息。但一直以来人们使用传统人工的方式管理学生选课信息,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们
13、深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对课程信息进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。本系统采用C/S(客户/服务器)模式,交互性强,可靠性高,并且事务数据处理能力强。因此,开发这样一套软件成为很有必要的事情,本文中所做的主要工作如下:(1)介绍本系统采用的相关技术。(2)阐述整个系统的系统结构及工作原理。(3)设计实现用户管理、课程管理、选课信息录入管理、课程的浏览等功能。(4)分析并解决实现中的若干技术问题。 (5)建立基本的局域网上选课,进行测试并分析结果
14、。第一章 系统使用的技术概述1.1 C/S与B/S模式目前应用于信息管理系统(MIS)的开发可概括为C/S和B/S两种模式。C/S与B/S结构的比较分析:(1)客户/服务器(C/S)模式:是指由一个或多个客户和一个或多个服务与下层的操作系统和网络系统所形成的一种允许分布式计算、分析的复合系统。C /S结构具有以下优点:1)交互性强:在C/S中,客户端有一套完整的应用程序,在出错处理、在线帮助等方面有强大的功能,并且可以在子程序间自由切换。2)可靠性高:由于C/S采用的是点对点的结构模式,各种应用逻辑必须通过相应的前端应用程序来完成,系统安全性、可靠性强。3)事务数据处理能力强:由于C/S模式主
15、要由客户应用程序Client、服务器管理程序Serve以及中间件MiddleWare3个部件组成,在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S快,这使得C/S处理大量信息的能力是B/S所无法比拟的,另外,C/S结构目前己经非常成熟,有大量的优秀的开发工具在支持。(2)浏览器/服务器(B/S)模式:是一种以Web技术为基础的新型的信息化环境平台模式,它以浏览器作为标准前端进行信息交互。B/S结构具有以下优点:1)简化了客户端:在基于B/S结构的系统中,用户只需通过浏览器便可进行各种信息处理。2)简化了系统的开发和维护:系统的开发者无须为不同级别的用户设计开发不同的客户应
16、用程序了,只需把所有的功能都实现在Web服务器上,也无须为每一个现有的客户应用程序升级,只需对Web服务器的服务处理程序进行修订。3)用户操作变得简单:对于C/S模式,客户应用程序有自己的应用界面,使用者需要专门培训,而B/S仅有一简单易用的浏览器软件,操作层人员无需培训,直接使用。4)B/S特别适用于网上信息发布,这使得传统的MIS的功能有所扩展。与其它信息管理系统相比,学生选课系统对交互性要求高,并且由于数据处理能力强,能相对减少错误的发生。鉴于C/S和B/S各自的优点,对系统安全性和交互性要求高、专业性强、数据处理量大的系统采用C/S结构,而对应应用范围广、功能变动频繁、信息交互量要求相
17、对弱的子系统则使用B/S结构。经过分析,此系统采用C/S模式进行开发。1.2 Swing技术简介Swing是Sun与网景合作将网景开发的一个IFC(InterNet Foundation Class)的GUI类完善后,建立的一个用户界面库,代码名“Swing”,发展到今天Swing是目前对非基于同级GUI工具包的正式称呼。要了解Swing,首先必须了解AWT,AWT是Swing的基础。Java的发展速度超出了人们的想象,Java API中最可视的部分API忽然成为了人们关注的焦点。遗憾的是,原来的AWT不能满足发展的需要。原来的AWT不是为许多开发人员使用的、功能强大的用户界面(UI)工具包而
18、设计的,其设计目的是支持开发小应用程序中的简单用户界面。例如,原来的AWT缺少许多面向对象UI工具包中所能见到的特性,例如,剪贴板、打印支持和键盘导航等特性在AWT中都不存在。原来的AWT甚至不包括弹出式菜单或滚动窗格等基本特性,而弹出式菜单和滚动窗格是开发现代用户界面的两个基本元素。此外,AWT的下层构件还有严重的缺陷。人们使AWT适应基于继续的、具有很大伸缩性的事件模型。甚至更糟,基于对等组件(peer)的体系结构也被用于AWT,该体系结构注定要成为AWT的致命弱点。由于熟悉到Java领域很可能在标准用户界面工具包问题上出现分裂局面,Javasoft和Netscape达成了一个交易,共同实
19、现Java基础类(Apple公司和IBM公司也参加了JFC的开发)。Netscape开发人员与Swing工程师一起合作,以便把大部分的IFC的功能嵌入到Swing组件中。起初打算让Swing类似于Netscape的IFC。然而,随着时间的推移。在增加了插入式界面样式等特性并修改了设计之后,Swing大大地偏离了它原来的目标。随着Swing1.1版本的推出,虽然大量的IFC技术仍然嵌在Swing中,但是,Swing与IFC相似的部分已大部分消失了。今天,在一个功能全面的用户界面工具包中,Swing提供了AWT和IFC中最优秀的成份。Swing的优点:(1)Swing有一套丰富的、更方便的用户界面
20、元素。(2)Swing几乎不依赖于平台,因而不容易出现与平台有关的错误。(3)Swing给用户的感觉是:在各平台上的运行都是一致的。4Swing的缺点:相比AWT而言,Swing的界面元素出现在用户屏幕上的速度比AWT慢。但是计算机硬件技术的发展已经弥补了这一缺憾。鉴于Swing相对于AWT的优点,本设计采用了Swing技术。1.3 JDBC技术简介JDBC是Java的开发者Sun的Javasoft公司制定的Java数据库连接(Java Data Base Connectivity)技术的简称,是为各种常用数据库提供无缝联接的技术。JDBC在Web和Internet应用程序中的作用和ODBC在
21、Windows系列平台应用程序中的作用类似。ODBC(OpenData Base Connectivity),称为开放式数据库互联技术,是由Microsoft公司倡导并得到业界普遍响应的一门数据库连接技术,如果读者有使用ODBC编程的经验,就会发现JDBC与ODBC很类似。JDBC现在可以连接的数据库包括:xbase、Oracle、Sybase、Aceess以及Paradox等。java具有坚固.安全.易于使用。易于理解与可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是java应用程序与各种不同数据库之间进行对话的方法。jdbc正是作为此种用途的机制。 (1)JDBC的工
22、作机制如果用户是从事软件领域工作的,不可能没有听说过SQL(Structure Query Language:结构化查询语言),它是一种标准化的关系型数据库访问语言。在SQL看来,数据库就是表的集合,其中包含了行和列。SQL标准虽然也还处在不断变革之中(任何一门标准如果已一成不变了,那只能说明这门学科已经停止发展了),但其基本内容相对稳定。JDBC定义了Java语言同SQL数据之间的程序设计接口。 JDBC有一个非常独特的动态连接结构,它使得系统模块化。使用JDBC来完成对数据库的访问包括以下四个主要组件:Java的应用程序、JDBC驱动器管理器、驱动器和数据源。 JavaSoft公司开发了J
23、DBC API,JDBC API是一个标准统一的SQL数据存取接口。JDBC在Internet中的作用与ODBC在Windows系列中的作用类似。它为Java程序提供了一个统一缝地操作各种数据库的接口,程序员编程时,可以不关心它所要操作的数据库是哪个厂家的产品,从而提高了软件的通用性,而且在Internet上确实无法预料你的用户想访问什么类型的数据库。只要系统上安装了正确的驱动器组,JDBC应用程序就可以访问其相关的数据库。 用JDBC来实现访问数据库记录可以采用下面的几个步骤: 61)通过驱动器管理器获取连接接口。 282)获得Statement或它的子类。 3)限制Statement中的参
24、数。 4)执行Statement。 5)查看返回的行数是否超出范围。 6)关闭Statement。 7)处理其它的Statement 8)关闭连接接口。 (2)JDBC的优点和缺点 JDBC API用于连接Java应用程序与各种关系数据库。这使得人们在建立客户/服务器应用程序时,通常把Java作为编程语言,把任何一种浏览器作为应用程序的友好界面,把Internet或Intranet作为网络主干,把有关的数据库作为数据库后端。以下是使用JDBC的优缺点。 优点如下: 1)JDBC API与ODBC十分相似,有利于用户理解。 2)JDBC使得编程人员从复杂的驱动器调用命令和函数中解脱出来,可以致力
25、于应用程序中的关键地方。 3)JDBC支持不同的关系数据库,使得程序的可移植性大大加强。 4)用户可以使用JDBC-ODBC桥驱动器将JDBC函数调用转换为ODBC。 5)JDBC API是面向对象的,可以让用户把常用的方法封装为一个类,备后用。 缺点如下: 1)使用JDBC,访问数据记录的速度会受到一定程度的影响。 2)JDBC结构中包含了不同厂家的产品,这就给更改数据源带来了很大的麻烦。1.4 Oracle数据库简介四年前电子商务在全球范围内还仅处于萌芽状态时,Oracle公司便前瞻性地作出了从领先的数据库厂商向以Internet计算为基础的完整的电子商务解决方案供应商转型的战略部署。这一
26、前瞻性战略为Oracle带来了巨大的利益,今天,Oracle能够领先于竞争对手提供包括平台产品、应用产品和完善的服务在内的先进的、完整的、集成的电子商务解决方案,可以无缝集成供应链管理(SCM)、企业资源管理 (ERP)、客户资源管理(CRM)和企业商业智能(BI)和电子商务应用IP(Internet Pocurement)、Exchange、Portal-to-go等产品。Oracle从低端到高端的所有方案100%基于Internet应用体系结构,都可以通过Web安全、直接地访问,使企业能够通过Web完成包括报价、定单、支付、执行、服务等在内的企业业务过程的所有环节,帮助企业将现有业务内容快
27、速转移到电子商务,迅速获得来自电子商务的高效益。 Oracle应用产品包括财务、供应链、制造、项目管理、人力资源和市场与销售等150多个模块,荣获多项世界大奖,现已被全球近7600多家企业所采用。由于在电子商务方面的杰出表现,Oracle公司在美国Mongan Stanley公司最新公布的权威性全球企业1000强中,从去年的第122名一跃成为第13名,成为全球第二大独立软件公司和最大的电子商务解决方案供应商。目前, Amazon和Dell等全球十个最大的Internet电子商务网站、全球十个最大的B-to-B网站中的九个、93%的上市.COM公司、65家“财富全球100强”企业均不约而同地采用
28、Oracle电子商务解决方案。 Oracle特点 :(1)Oracle7.X以来引入了共享SQL和多线索服务器体系结构。这减少了Oracle的资源占用,并增强了Oracle的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。(2)提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。 (3)支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。 (4)提供了与第三代高级语言的接口软件PRO*系列,能在C,C+等主语言中嵌入SQL语句及过程化(PL/SQL)语句,对数据库中的数据进
29、行操纵。加上它有许多优秀的前台开发工具如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。 (5)提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。综上所述,本设计使用了SUN和网景公司合作为JAVA开发的Swing技术,数据库使用了甲骨文公司的Oracle,而连接数据的技术使用JDBC,系统的核心代码是使用JAVA语言编写的。第二章 系统分析2.1 应用需求分析实际中的选课流程为:由管理员添加三种基本用户,然后由教师用户登录进行课程管理的相应操作,最后由学生用户
30、登录进行相应的选课操作,其中用户又能维护自己的个人信息,所以本系统至少需要满足来自三方面的需求,这三个方面分别是管理员、教师和学生。学生的需求是查询院系的课程、学生选课情况及学生信息的修改;教师对选课系统学生选课情况进行操作,同时形成学生选课查看确认;选课管理员的功能最为复杂,包括对学生、教师用户的添加和删除,并需要实现强制修改所有用户密码的功能,以及灵活更改用户权限。学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以维护部分个人信息。一般情况下,学生应该只能查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课及成绩查询信息,就要知道其他学生的学号和密码。这些是很难
31、得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。此外本系统由此扩展出另外两种用户,即学生管理员和教师管理员,这两种用户都具有双重权限,拥有相应的两种用户所有的操作权限。2.2 系统功能需求选课系统对选课信息、教师信息、总体选课情况信息的查询和统计。学校管理员专注于对用户的操作;删除某条学生选课基本信息记录时,应实现对该学生选课的级联删除。设计不同用户的操作权限,对所有用户开放的学生选课查询和个人部分信息,维护查看个人情况信息,维护学生个人密码,根据选课情况对数据库进行操作,统计各种选课信息保证学生信息处理的完整性。本系统主要应实现教师信息管理、学生信息管理、课程信息管理,
32、其中教师信息管理有教师姓名、教师工号、教师所属院系;学生信息管理有学生姓名、学生学号和学生所在系;课程信息管理有课程编号、课程名称、学分、已选人数、课程人数等。根据以上对实际选课流程的分析及选课系统应用需求的分析,得出本系统所应具备如下的功能:(1)学生用户完成学生的登录,然后根据数据库中相应信息,点击“下载课程”列出所有待选课程,进而调用相应的选课模块。其中学生登录模块的功能是验证登录人员是否存在于数据库中,并进行密码核对,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入学生用户的主操作界面。(2)教师用户完成教师的登录,然后根据数据库中相应信息,教师可查看已发布的课程信息,并可进
33、行课程的添加和删除,修改个人信息。其中教师登录模块的功能是验证登录人员确实是教师,教师启动本系统后,系统提示输入教师工号和密码,验证后进入教师的主控操作界面。(3)能够实现管理员登录后,实现管理员对用户的添加和删除操作,并能够强制修改用户密码,能够实现对用户权限的修改,实现用户与其对应的管理员权限的自由转换。(4)学生管理员登录后具有学生和管理员两个基本用户所有的权限。(5)教师管理员登录后具有教师和管理员两个基本用户所有的权限。2.3 系统性能需求(1)系统要有很好的可移植性,运行环境不能受系统编码格式限制。(2)系统必须有很好的可维护性,代码的格式必须规范,具体格式依据东软编码修正规范.d
34、oc。(3)系统要有一定的健壮性,有一定的错误处理机制和容错能力。(4)界面设计要求美观、大方。(5)系统运行必须稳定,尽量少地占有内存资源。(6)系统运行环境:中文版Windows操作系统 / Linux操作系统、512M以上内存、20G以上硬盘容量、LED或LCD显示器(7)系统开发环境:MyEclipse3.22.4 业务流分析选课教务系统的业务流程:首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除。学生用户可登录完成对课程的选择,有权限用户还可以基于已有信息进行修改操作,并可实现修改密码操作。第三章
35、 系统详细设计3.1 系统介绍根据对选课系统的需求分析,得出该系统应该实现学生用户、教师用户、管理员、学生管理员用户及教师管理员用户的相关操作,并且能够实现多用户同时操作。期间,学生用户可进行选课、修改个人信息及密码的操作,教师用户可进行课程的添加和删除操作,以及管理员和另外两个用户进行相关的操作。该选课系统应具有如下一些特点:(1)五种不同的系统用户使用同一登录界面,由系统自动判断用户的类型,以显示与用户相对应的操作界面。(2)支持权限的灵活修改,根据实际需求,能够实现同时具备学生和管理员权限的用户,同样能够实现同时具备教师和管理员权限的用户。(3)实现对所有可选课程人数的自动限制,即当某课
36、程选课人数已满时,此课程将不会再出现在再次登录的学生用户可选课程列表中,避免了教师再对选课的学生进行抽签操作。(4)实现学生用户重复选课的自动限制,给出相应的操作失败的提示。(5)实现教师查看相关选课信息时,显示所有每一门课程的需求人数和已选人数,当某一课程选课人数已满时,自动弹出对话框进行提示。(6)实现所有用户都能查看选课规则。(7)系统有很好的可移植性,因为要采用的是JAVA技术,而JAVA技术本身就是跨平台运行的,所以即使此系统是在SUSE10系统上进行的开发,也可以毫无问题的移植到Windows上运行。(8)操作成功或失败都会有对话框进行提示,操作更加人性化。3.2 数据描述3.2.
37、1 类图系统主要类图:图3-1 系统主要类图3.2.2 用例图(1)学生与教师用例图图3-2 学生、教师用户用例图(2)管理员用例图图3-3 管理员用例图(3)学生管理员用例图图3-4 学生管理员用例图(4)教师管理员用例图图3-5 教师管理员用例图3.3 数据库设计3.3.1 数据库需求分析根据学生选课系统的具体使用人员和具体需求,分析和创建数据库。学生可以进行个人信息查询和修改,以及进行选课相应的操作;而教师可以查询相应的选课信息并且可以对课程进行添加和删除操作,也可以对自己的个人信息进行相关修改;管理员具有更改用户权限的操作,并添加和删除用户、强制修改用户密码的操作。根据以上功能操作和操
38、作者的不同不难得出这本数据库需求5张表:学生表swl_student,用于存放学生的个人信息;教师表swl_teacher,用于存放教师相关信息;课程表swl_course,用于存放课程相关信息;用户表swl_user,用于存放所有用户名及密码还有此用户对应的相应权限标志;选课表swl_stu_course,用于存放学生选课的相关信息。3.3.2 数据项和数据结构(1)学生信息,包括的数据项:学号、姓名、性别、生日、身份证号、所在学院、所在专业、班级、籍贯、政治面貌。(2)教师信息,包括的数据项有:教师职工号、教师姓名、姓别、学院、教师简介。(3)课程信息,包括的数据项有:课程编号、授课教师职
39、工号、课程名、学分、学时、需求人数、已选人数、选课标志、备注。(4)用户信息,包括的数据有:用户名、密码、以及权限标志。(5)选课信息,包括的数据项有:课程编号、授课教师职工号、选课学生学号。3.3.3 数据字典(DD)本次毕业设计涉及5张表,由于本设计是为学校开发的选课教务系统,所以考虑到数据量大和操作的稳定性,本设计的张表都有内在的关联关系,在设置某些外键时加入级联删除的属性,避免产生大量的无用字段值,这样就可以减少数据库空间的浪费。各表详细信息如下: 表3-1 学生信息表简称名字数据类型位置学号sidvarchar2(15)主键swl_student姓名namevarchar2(15)s
40、wl_student姓别gendervarchar2(5)swl_student出生日期birvarchar(15)swl_student身份证号cartvarchar2(18)swl_student学院xueyuanvarchar2(20)swl_student专业zhuanyevarchar2(20)swl_student班级classvarchar2(10)swl_student住址addressvarchar2(20)swl_student政治面貌politicalvarchar2(15)swl_student表3-2 课程表简称名字数据类型位置课程编号cidvarchar2(15)主
41、键swl_course授课教师职工号teacheridvarchar2(15)swl_course课程名coursenamevarchar2(15)swl_course学分creditnumber(3,1)swl_course学时hournumber(3)swl_course需求人数totalnumber(3)swl_course已选人数counternumber(3)swl_course备注discriptionvarchar2(50)swl_course表3-3 选课信息表简称名字数据类型位置学号sidvarchar2(15)主键swl_stu_course课程编号courseidvarc
42、har2(15)主键swl_stu_course授课教师职工号teacheridvarchar2(15)主键swl_stu_course表3-4 用户表简称名字数据类型位置用户名useridvarchar2(15)主键swl_user用户密码passwordvarchar2(200)swl_user 权限标志flagnumber(1)swl_user表3-5 教师信息表简称名字数据类型位置 教师职工号tidvarchar2(15)主键swl_teacher教师姓名namevarchar2(15)swl_teacher姓别gendervarchar2(20)swl_teacher学院xueyua
43、nvarchar2(30)swl_teacher备注discriptionvarchar2(50)swl_teacher第四章 选课教务系统的实现4.1 学生模块学生用户登录后,查看所有的可选课程以及查看以前选过的课程信息,并能修改用户的个人信息(包括密码,但用户名除外),具体功能如下:(1)用户登录:当学生用户输入正确的用户名(学号)和密码,进行登录,如果有错或输入的信息为空则给出相应错误信息提示。图4-1 学生登录(2)选课操作:首先选择课程,支持同时多选,当点击“选择课程”后,被选课程会出现在右边的列表框中,等待用户最终确认,在此期间用户可选择待确认课程中的一个或多个进行删除操作,给用户
44、以更多的思考、更多的选择,当用户最终确认所选课程时,只需点击“提交课程”。图4-2 学生选课 (3)查看所有可选课程:点击“下载课程”按钮。图4-3 学生下载课程(4)修改个人信息:点击“修改”,激活可更改信息,修改后点击“提交”。图4-4 学生修改个人信息(5)查看所有曾经选过的课程信息。图4-5 学生查看已选课程(6)修改用户密码:首先输入现有密码,然后输入要更改的新密码,二者都不能为空,并且现在密码也必须正确,点击“确认”,修改成功会弹出对话框提示修改密码成功。图4-6 学生修改密码4.2 教师模块在此模块中,首先由教师用户登录,教师用户登录后,可查看自己所发布的选课信息,并且能管理自己
45、的个人信息,也能够修改用户的个人私有密码,具体如下:(1)用户登录:当教师用户输入正确的用户名(职工号)和密码,进行登录,如果有错或输入的信息为空则给出相应错误信息提示。(2)课程管理:在此教师用户可以添加课程及课程的详细信息,并在当前登录的有效时间内对所添加的课程进行删除操作,添加成功会给出相应的成功提示。图4-7 教师课程管理(3)课程信息:在此教师用户可以查看自己所发布的选课信息,包括选的人数等,如果某些课程选课人数已满也要给出相应的提示信息。图4-8 教师课程信息(4)修改个人信息:点击“修改”,激活可更改信息,修改后点击“提交”。(5)修改用户密码:首先输入现有密码,然后输入要更改的新密码,二者都不能为空,并且现在密码也必须正确,点击“确认”,修改成功会弹出对话框提示修改密码成功。图4-9 教师修改密码4.3 管理员模块(1)用户登录:当学生用户输入正确的用户名(学号)和密码,进行登录,如果有错或输入的信息为空则给出相应错误信息提示。(2)列出所有用户:点击“列出所有用户”按钮,会显示出目前所有的用户的列表,并按一定顺序显示在用户列表中。图4-10 管理员列出所有用户(3)强制修改密码:在此只要选中用户列表中的一个或多个用户,点击“修改密码”,会弹出对话框提示管理员用户输入新的密码,即,可同时强制修改一个或多个任意类型用户的密码。图4-11
限制150内