基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc

上传人:仙人指路1688 文档编号:2387377 上传时间:2023-02-17 格式:DOC 页数:49 大小:1.02MB
返回 下载 相关 举报
基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc_第1页
第1页 / 共49页
基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc_第2页
第2页 / 共49页
基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc_第3页
第3页 / 共49页
基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc_第4页
第4页 / 共49页
基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《基于JavaEE的学院体育选向课程网站的设计与实现毕业论文.doc(49页珍藏版)》请在三一办公上搜索。

1、届别 2012 学号200814340108毕业设计(论文)基于Java EE的湘南学院体育选向课程网站的设计与实现 毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业

2、设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月

3、日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日目 录摘 要IAbstractII1 概述11.1 选向课程平台介绍11.2开发背景及意义11.3 国内外研究动态21.4 论文的组织结构22系统开发环境及相关技术理论介绍32.1开发环境32.2 相关技术简介33 系统分析113

4、.1系统功能需求分析113.2 可行性分析114 系统总体设计134.1 系统功能总体框架134.2 系统各功能模块设计145 系统详细设计175.1系统设计的原则和目标175.2 系统体系结构的设计175.3 数据库设计176 系统的实现236.1 系统实现的流程图236.2 系统具体功能模块的实现247 系统的测试327.1软件测试目的327.2软件测试方法327.3测试计划327.4软件需求测试结论377.5系统维护37结 论38参考文献39致 谢40摘 要湘南学院体育选向课程平台是针对在校学生和教师使用的一个选排课系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面

5、。本系统采用B/S架构,构建于JAVA EE平台之上,整个系统应用了MVC三层架构模式。本系统主要用户是学生、教师、系教务管理员和系统管理员。系统管理员管理系统的基本信息,学生和教师通过系统完成不同的工作。系统需要实现的功能主要有4个,系统管理员对整个系统基本信息的维护,教务人员对课程的编排,教师对应的查课功能,以及学生对应的选课功能。论文首先对系统进行大致的说明,再介绍了设计开发过程中用到的技术,其次是系统需求分析,系统总体设计,系统详细设计,然后具体讲解了系统的实现与测试,最后对本次论文做了一个小结。 关键字:选排课系统;数据库;选向课程AbstractThe PE Elective an

6、d Arrangement Course Platform is aimed to support the students and teachers of XiangNan University for PE course arrangement and election. Its development includes database construction and application program production. This platform which bases on JAVA EE and B/S construction, and platform use MV

7、C three layers framework pattern.Itsmajorityusersarestudents,teachers,educationalmanagersandplatformmanagers.Theplatformmanagersmanagetheessentialinformationofthesystem,andthestudentsandteachersfinishdifferentworkwiththissystem.Through this platform there are 4 tasks that can be finished: platform m

8、anager can preserve the information of the whole system, educational managers can arrange the curriculum, the teachers can look for the courses and the students can select courses.This article take a brief introduction of the system at first, then introduction the technology used during designing an

9、d building this system, in the next, analysis the system demand, overall design and detailing structure, then explain the systems enforce and test in details. In the end, this article takes a conclusion of this system design. Key words: course selection system, selective curriculum, database 1 概述 1.

10、1 选向课程平台介绍湘南学院体育选向课程平台是一个选排课系统,选排课系统作为计算机应用的一部分,使用计算机对课程信息进行管理,有着手工管理所无法比拟的优点1。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是各大院校科学化、正规化管理的重要条件。湘南学院体育选向课程平台主要用户是学生、教师、系教务管理员和系统管理员,教务人员管理系统的基本信息(如课程、老师、学生等),学生和教师通过系统完成不同的工作。系统需要实现的功能总体来说共有4个,分别如下:(1) 系统管理员可以维护整个系统的基本信息;(2) 教务人员可以对课程进行编排

11、管理;(3) 教师可以查看课表;(4) 学生可以选课;1.2开发背景及意义1.2.1背景目前湘南学院体育选向课程采用的方式是教师通过表格手工登记学生选课信息,但是当前湘南学院学生人数已经到达2万。如果采取传统的手工方式,就需要教务管理人员和教师花费大量的时间和精力对选课信息进行统计整理,然后根据统计信息进行手动编排课程,这种方式不利于教师及教务管理人员的管理。因此教务处委托谢老师开发一个体育选向课程网站,谢老师把这个当作一个毕业设计课题,我在谢老师的指导下开发了这个系统。1.2.1意义解决了传统方式所造成的教务管理人员工作的浪费,大大提高了教务管理员的工作效率。1.3 国内外研究动态随着Int

12、ernet的逐步发展,网络不仅仅是科研部门学术交流的平台,在其他的方面上也得到了很大的发展,尤其是在校园网的分支教务管理上2。同时在教务管理的主要分支选课排课系统的应用上得到了较大的发展。国外针对此问题展开的研究较早。1963年C C Gotlieb 在他的文章The Construction of Class-Teacher Time-Tables中提出了课表编排的数学模型。这篇文章引起了人们对于选排课问题的重视。而国内对选排课问题的研究较晚。1984年,清华大学在清华大学学报上发表了林漳希和林尧瑞在该课题上的实验性研究成果人工智能技术在课表编排中的应用,标志着我国开始了对选排课问题的研究。

13、目前,我国高校都实行了学分制,它的核心是允许学生自由选课,即把学习的自主权交给学生。在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。在高等学校的教务管理工作中,课程表的编排是一项十分复杂、棘手的工作。在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾3。利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶。1.4 论文的组织结构第一

14、章是绪论,简述设计本系统的初衷以及背景。第二章是开发技术简介,简述本系统开发和设计过程中用的到的主要技术。第三章是系统需求分析,简述自己分析系统,对项目进行需求分析。第四章是系统的概要设计,简述系统的概要设计的。第五章是详细设计,简述系统设计的详细过程。第六章是系统的实现,简述系统是如何实现的。第七章是系统的测试,对系统进行必要的测试。最后是结论,总结了本论文的主要工作和系统特色,以及本次论文设计的心得。2系统开发环境及相关技术理论介绍2.1开发环境2.1.1 硬件环境CUP:至少PentiumIII800以上内存:至少128M以上硬盘:至少20G硬盘空间以上显示器:15显示器2.1.2 软件

15、环境运行环境: Windows 7开发工具: MyEclipse8.6数据库: MySQL5.5Web服务器: Tomcat6.0.32浏览器: IE 8.02.2 相关技术简介2.2.1JAVA EE概述J2EE是美国Sun公司推出的一种全新概念的应用程序模型,是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。与传统的互联网应用程序模型相比有着不可比拟的优势。目前,Java 2平台有3个版本,它们是适用于小型设备和智能卡的Java 2平台Micro版(Java 2 Platform Micro Edition,J2M

16、E)、适用于桌面系统的Java 2平台标准版(Java 2 Platform Standard Edition,J2SE)、适用于创建服务器应用程序和服务的Java 2平台企业版(Java 2 Platform Enterprise Edition,J2EE)。J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。Java语言相对于windows变成语言来说,最大优势在java语言是跨平台的,而widows的编程通常都是针对windows系统来开发,可移植性远不及Java。J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩

17、固了标准版中的许多优点,例如编写一次、随处运行的特性、方便存取数据库的JDBC(Java DataBase Connectivity)应用程序接口(API, Application Program Interface)技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构4。2.2.2 Struts 2框架与MVC简介Struts 2是Struts的

18、下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2只有很小的变化,如图2-1所示:图2-1 Struts的工作原理图MVC模式英文即Model-View-Controller,即

19、把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成

20、用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到 这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制5。如图2-2所示:图2-2 MVC的原理图2.2.3 Hibernate与ORM简介对象-关系映射(Object/Relation Mapping,简称ORM),是

21、随着面向对象的软件开发方法发 展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数 据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法 直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。Hibernate是轻量级Java EE应用的持久层解决方案,Hibernate不仅管理Java类到数据库表的映射(包括Java数据类型到SQL数据类

22、型的映射),还是提供数据查询和获取数据的方法,可以大幅度缩短使用JDBC处理数据持久化的时间。目前的主流数据库依然是关系型数据库,而Java语言则是面向对象的编程语言6,当把二者结合在一起使用时相当麻烦,而Hibernate则减少了这个问题的困扰,它完成对象模型和基本SQL的关系模型的映射关系。因为有Hibernate的支持,使得JavaEE应用的OOA(面向对象分析)、OOD(面向对象设计)、OOP(面向对象编程)三个过程一脉相承,成为一个整体。由于Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的JAVA程

23、序,和App Server没有任何关系,也不存在兼容性问题。如图2-3所示:图2-3 Hibernate体系总览图由于Hibernate比较复杂,提供了好几种运行方式。在轻型体系中,应用程序自己提JDBC连接,并自行管理事务。这种方式使用了Hibernate API的一个最小子集。如图2-4所示:图2-4 Hibernate轻型应用体系在前面解决体系中,对于应用程序来说,所有的底层JDBC/JTA API都被抽象了,Hibernate会替你照管好所有的细节。本文中所用到的就是这种体系。如图2-5所示:图2-5 Hibernate全面应用解决体系以下是图中一些对象的定义: 1)SessionFa

24、ctory 对属于单一数据库的编译过的映射文件的一个线程安全的,不可变的缓存快照。它是Session的工厂,是ConnectionProvider的客户。可能持有一个可选的二级数据缓存,可以在进程级别后集群级别保存可以在事务中重用的数据。2)Session 会话 Session是生命周期的单线程对象,代表应用程序和持久层之间的一次对话。封装了一个JDBC连接,也是Transaction的工厂。保存有必需的(第一级)持久化对象的缓存,用于遍历对象图或通过标识符查找对象。3)持久化对象(Persistent Object)及其集合(Collection)生命周期短的单线程对象包含了持久化状态和商业

25、功能。它们可能是普通的JAVABeans/POJOs,唯一特别的是他们现在都从属于且仅从属于一个Session。一旦Session关闭,他们都将从Session中取消联系,可以在任何程序层自由使用。4)事务(Transaction)事务也是生命周期短的单线程对象,应用程序用它来表示一批工作的原子操作。是底层的JDBC,JTA或者CORBA事务的抽象。一个Session某些情况下可能跨越多个事务。2.2.4 Spring简介Spring 是一个开源 框 架,是为了解决企业 应 用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE 应用程序开

26、发提供集成的框架。Spring 框架的功能可以用在任何J2EE 服务器中,大多数功能也适用于不受管理 的环境。Spring 的核心要点是:支持不绑定到特定J2EE 服务的可重用业务和数据访问对象。这样的对象可以在不同J2EE 环境(Web 或EJB )、独立应用程序、测试 环境之间重用7,如图2-6所示:图2-6 Spring框架的组成结构图组成Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下: 核心容器:核心容器提供Spring 框架的基本功能。核心容器的主要组件是BeanFactory ,它是工厂模式的实现。BeanFactory

27、使用控制反转 (IOC ) 模式将应用程序的配置和依赖性规范与实际的应用程序代码 分 开。 Spring 上下文:Spring 上下文是一个配置文件,向Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如JNDI 、EJB 、电子邮件、国际化、校验和调度功能。 Spring AOP : 通过配置管理特性,Spring AOP 模块直接将面向方面的编程 功 能集成到了Spring 框架中。所以,可以很容易地使Spring 框架管理的任何对象支持AOP 。Spring AOP 模块为基于Spring 的应用程序中的对象提供了事务管理服务。通过使用Spring AOP ,不用依赖

28、EJB 组件,就可以将声明性事务管理集成到应用程序中。 Spring DAO :JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库 供应商抛出的错误消息。异常层次结构简化了错误处理,并 且极大地降低了需要编写 的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向JDBC 的异常遵从通用的DAO 异常层次结构。 Spring ORM :Spring 框架插入了若干个ORM 框架,从而提供了ORM 的对象关系工具,其中包括JDO 、Hibernate 和iBatis SQL Map 。所有这些都遵从Spring 的通用事务和DAO 异常层次结构。

29、 Spring为企业应用的开发提供了一个轻量级的解决方案。该解决方案包括:基于依赖注入的核心机制,基于AOP的声明式事务管理,与多种持久层技术的整合,以及优秀的Web MVC 框架等。Spring致力于Java EE 应用各层的解决方案,而不是仅仅专注于某一层的方案。2.2.5 JSP技术简介JSP技术提供了一种简单快速的方法来创建显示动态生成内容的Web页面。也就是在MVC中充当V(View)的角色。由业界处于领先地位的Sun公司制定了相关的JSP技术规范,该规范定义了如何在服务器和JSP页面间进行交互,还描述了页面的格式和语法8。JSP页面使用XML标签和scriptlets(一种使用JA

30、VA语言编写的脚本代码),封装了生成页面内容的逻辑。它将各种格式的标签(HTML或者XML)直接传递回响应页面。通过这种方式,JSP页面实现了页面逻辑与其设计和显示的分离。JSP技术是JAVA系列技术的一部分。JSP页面被编译成servlet,并可能调用JAVABeans组件(beans)或Enterprise JAVABeans组件(企业beans),以便在服务器端处理。因此,JSP技术在构建可升级的基于web的应用程 序时扮演了重要角色。 JSP页面并不局限于任何特定的平台或web服务器上。JSP规范在业界有着广泛的适应性。 JSP技术是行业协作的结果,它的设计是开放的,符合行业标准的,并

31、支持绝大多数的服务器、浏览器和相关工具。由于使用可重用的组件和标签取代了对页面本身脚本语言的严重依赖,JSP技 术大大加快了开发的速度。所有JSP的实现均支持以JAVA编程语言为基础的脚本语言,它有与生俱来的可适应性,支持复杂的操作。2.2.6 MySQL数据库简介MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。MySQL是一种关联数据库管理系统,关联数据库将数据 保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL“结构化查询语言”。

32、SQL是用于访问数据库的最常用标准化语言。MySQL软件采用了GPL(GNU通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库9。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。3 系统分析3.1系统

33、功能需求分析现代化学校应该有个现代化的管理系统去管理学校内的各项事物,学校是一个数据量比较大的单位,如何去管理及查询学校内的数据就成为了一项及为重要的问题,同时,学生选课、教务人员排课这项工作是教学管理中很重要的一个环节,所以开发出一个选排课系统就是现在及为重要的事情,从而选排课系统的重要性就不言而喻了10。本系统的设计目的是要将学生选择课程和教务管理人员的编排课程通过网络进行管理。为学生、教师和教务管理人员提供便利。系统的用户有4种类型,分别为系统管理员、系教务管理员、学生、教师,系统对于一个用户只允许以一种身份登录。系统管理员登录后可以对系统进行信息管理,其主要操作是维护学生、教师和课程的

34、基本信息。学生登录后的主要操作是选课和查看教师主页以及查看通知和发布留言。教师登录后主要操作是查看课表以及个人信息的维护、留言等功能。将系统需求加以总结,得出系统具有如下几个功能:(1) 系统可以运行在Windows操作系统平台上,并具有友好的用户界面。(2) 系统用户类型为:系统管理员、教务人员、学生、教师。(3) 系统对于一个用户只允许以一种身份登录。(4) 只有系统管理员可以维护学生、教师和课程的基本信息。(5) 学生可以选课、查看教师主页并留言。(6) 教师可以选择查看课表、修改个人信息并增删改留言。3.2 可行性分析可行性分析(Feasibility Analysis)也称为可行性研

35、究,任何一个基于计算机的系统,都会受到时间和资源上的限制。必须根据客户可能提供的时间和资源条件进行可行性研究。它可以避免人力、物力和财力上的浪费。对该系统的开发从经济、技术、操作三方面进行分析和研究11。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。3.2.1经济可行性分析确定开发项目的开发成本以及估算开发项目所能够产生的经济效益:该系统目前在校园里受到一致好评,在方便高效快捷的基础上,有助于学生学习、教师工作及有效的管理的应用价值,有很好的实用和发展前景。所以本系统在经济上是可行的。3.2.2技术可行性分析确定现有的技术是否

36、能解决本该开发项目:本系统主要采用Struts2+Hibernate+Spring架构,使用JAVA语言,和MySql数据库等主要技术,整个平台构建于JAVA EE之上,比较容易实现。所以在技术上也是可行的。3.2.3操作可行性分析确定软件产品是否能够被最终的用户所接受,用户是否能操作最终的产品:本系统采用B/S架构,客户端采用浏览器的形式,操作简单,方便使用。所以在操作上也是可行的。综上所述,此系统开发目标已明确,在技术和经济,操作三方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。4 系统总体设计4.1 系统功能总体框架本系统主要有教务管理员、教师、学生和系统管理员四种用户组,功

37、能都是围绕这四个个用户组设计的。教务管理员相关的功能结构图如图4-1所示:4-1系教务管理员功能结构图教师相关的功能结构图如图4-2所示:4-2教师功能结构图学生相关的功能结构图如图4-3所示:4-3学生功能结构图系统管理员相关的功能结构图如图4-4所示:系统总体的功能结构图如图4-5所示:4-5系统结构图4.2 系统各功能模块设计经过详尽的需求分析,确定各功能模块内容大致如下:4.2.1系教务管理员功能模块系教务管理员注册、登录(注册需要经过认证)后,能自动生成该教务管理员主页,教务管理员应具有根据学生选课信息进行排课(手动和自动)、调课,并生成相应的排课表及可以在自己的主页上发布、删除、修

38、改自己的通知与查看留言等功能。4.2.2 教师功能模块教师注册、登录、修改个人信息(注册需要经过认证)后,能自动生成该教师主页,教师可以查看本学期个人课表及系总课表及可以在自己的主页上可以发布、删除、修改自己的留言。4.2.3 学生功能模块学生注册、登录后,能自动生成该学生主页,学生可以查看访问教师个人主页,针对不同教师、不同课程(同一名教师的同一门课程,最多人数为35人),学生可以自由选课及留言。4.2.4后台管理功能模块后台管理:系统管理员应具有对数据进行添加、删除、更改等维护功能。4.3 系统总体及各实体用例图设计系统总体例图如图4-6所示:前端用户包括教务管理员、教师、和学生。留言用户

39、注册用户登录查询课表查看通知选课管理员登录用户管理课程管理留言管理通知管理前端用户系统管理员图4-6 系统总体用例图5 系统详细设计5.1系统设计的原则和目标本系统的设计目标是借助互联网为学校建立的一个选向课程网站,是针对在校学生和教师使用的一个选排课系统,该系统能方便学生的选课,教务管理员对学生选课信息进行排课、调课,学校的教务管理。最终实现了用户和课程的信息化管理。5.2 系统体系结构的设计系统依据MVC模式可分为视图层、控制层、模型层。从程序分布位置角度,系统依次分布在浏览器、应用服务器、数据库系统三层,如图5-1所示:图5-1 系统体系构架图5.3 数据库设计5.3.1 数据库概念结构

40、设计概念结构的设计是将系统需求分析得到的用户需求抽象为信息结构过程。概念结构设计的结果是数据库的概念模型。只有将系统应用需求为信息世界的结构,才能转化为机器翻译世界中的数据模型,并用DBMS实现这些需求。按照自顶向下分析需求与自底向上设计概念结构方法,概念结构的设计可分为两步:第一步是抽象数据并设计局部视图;第二步是集成局部视图,得到全局的概念结构。利用数据抽象的方法可以对现实世界抽象得出概念模型的子集及属性,概念结构设计是利用抽象机制对需求分析阶段悼念到的数据进行分类、组织(聚集),形成实体集、属性和码,确定实体集之间的联系类型,进而设计E-R图。5.3.1.1各实体及其属性本系统总共有以下

41、9个实体:(1) 系统管理员(ID号,用户名,密码)。(2) 教务管理员(ID号,用户名,密码,编号,真实姓名,身份认证)。(3) 教师(ID号,用户名,密码,编号,真实姓名,所在系,身份认证)。(4) 学生(ID号,用户名,密码,编号,真实姓名,所在系,权限(5) 课程(ID号,课程编号,课程名称,课程类型)。(6) 选课(ID号,用户名,课程名字)。(7) 留言(ID号,用户名,内容,时间)。(8) 排课(ID号,编号,名字,教师名称,学分,学时,地址,时间)。(9) 通知(ID号,标题,内容,时间)5.3.1.2系统E-R图系统的实体之间关系E-R图如图5-2、5-3所示图5-2 课程-

42、用户图5-3 用户-通知-留言5.3.2 数据库物理结构设计数据库在系统中占有及其重要的地位,数据库结构设计的好坏关系到系统的运行效率、存储数据的效率、系统的复杂程度等,合理的数据库结构设计可以提高系统性能。据库中的各个表的设计结果如下表所示(每个表格表示数据库中的一个表)。(1)用户信息表用户信息表记录了所有用户的信息。其中包括用户ID,用户名,编号,性别,用户真实姓名,权限,身份认证。它们的属性如表5-1所示。设置用户ID为主键。表5-1用户信息表(usertable)列 名数 据 类 型字 段 大 小必 填 字 段默 认 值备 注idint11是主键,用户ID usernamevarch

43、ar50是NULL用户名sexvarchar10是NULL性别passwordvarchar50是NULL密码xuehaovarchar50是NULL编号zsxmvarchar50是NULL真实名suozaixivarchar50是NULL所在系quanxianvarchar50是NULL权限sfrzvarchar50是NULL是否认证(2)课程信息表课程信息表记录了课程的所有信息,包括课程编号,课程名称,课程类型,其属性如表5-2示。设置课程ID为主键。表5-2课程信息表(kecheng)列 名数 据 类 型字 段 大 小必 填 字 段默 认 值备 注idint11是主键,课程IDk_bia

44、nhaovarchar50是NULL课程编号k_namevarchar50是NULL课程名称k_typevarchar50是NULL课程类型(3)排课信息表排课信息表记录了排课的所有信息,包括课程编号,课程名称,教师,学分,学时,上课地址,开课时间。其属性如表5-3示。设置排课ID为主键。表5-3排课信息表(paike)列 名数 据 类 型字 段 大 小必 填 字 段默 认 值备 注idint11是主键,排课IDk_bianhaovarchar50是NULL课程编号k_namevarchar50是NULL课程名称teachervarchar50是NULL教师xuefenvarchar10是NULL学分xueshivarchar10是NULL学时addressvarchar50是NULL地址shijianvarchar50是NULL时间(4)选课信息表选课信息表记录了选课的所有信息,包括选课ID,课程名称,用户名称。其属性如表5-4示。设置选课ID为主键。表5-4选课信息表(xuanke)列 名数 据 类 型字 段 大 小必 填 字 段默 认 值备 注idint11是主键,选课IDusernamevarchar50是NULL用户名称k_namevarchar50是NULL课程名称(5)留言信息表留言信息表记录了留言的所

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号