毕业设计(论文)网上选课系统的开发与设计

上传人:痛*** 文档编号:42467860 上传时间:2021-11-26 格式:DOC 页数:37 大小:104KB
收藏 版权申诉 举报 下载
毕业设计(论文)网上选课系统的开发与设计_第1页
第1页 / 共37页
毕业设计(论文)网上选课系统的开发与设计_第2页
第2页 / 共37页
毕业设计(论文)网上选课系统的开发与设计_第3页
第3页 / 共37页
资源描述:

《毕业设计(论文)网上选课系统的开发与设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)网上选课系统的开发与设计(37页珍藏版)》请在装配图网上搜索。

1、北京理工大学珠海学院2010届本科生毕业设计(论文)网上选课系统的开发与设计摘 要网上选课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,现在大部分高等院校开始实行的是学生的自主选课模式,传统的教学模式(学生按照学校安排好的课程上课)已经不能适应新型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物力资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。随着高校人数的增多,这种弊端会越来越多的暴露出来。因此,利用网络,使学生只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量。从教师的角度来说,同样是节省了大量的工作量,由于教师提

2、出代课申请完成课程发布的工作较学生选课而言更加的复杂,因此通过网上进行课程发布能大幅度的减少教师的工作量,减少错误的发生几率。作为教师,也只要通过自己的电脑来操作即可,不用再奔波于教务处和办公室之间。本系统是采用Java环境下实现MVC设计模式的Struts框架和实现ORM的Hibernate框架结合起来开发的。用Struts构建整体框架,Hibernate实现数据持久层,这两者的结合很大的提高了系统开发效率,使的系统更易于维护,可重用性更高,可移植性更好。关键词:Struts 网上选课 Hibernate Online Course Selection System Development

3、and DesignABSTRACT Online Course Online Course Selection System is targeted at school students and teachers from the perspective of our students. because the reform of school education, most colleges and universities are now beginning to implement the student's own course selection model. the tr

4、aditional teaching (students arranged in accordance with school curriculum classes) have not adapt to new teaching methods, if the paper is still the way through the course selection. on the one hand and waste a lot of manpower, material resources, on the other hand a waste of time and man-made stat

5、istical process appears inevitable errors and so on. With the increasing number of universities, such shortcomings would be exposed more and more. Therefore, the use of the network, as long as the computer before the students enter their personal information to complete the original course selection

6、 is several times the amount of work. From the teacher's point of view, also save a lot of workload. as proposed by substitute teachers for completion of the course work published more than students in course selection in terms of complexity. it can be released through online courses greatly red

7、uce the work of teachers volume. reducing the occurrence of the error probability. As a teacher, also as long as the computer to operate by their own can, no need to rush in between the office and the R 淘宝返利网 This system uses the Java environment to achieve the Struts MVC design pattern framework an

8、d the Hibernate ORM framework to achieve integrated development. Construction of overall framework using Struts, Hibernate for data persistence, this combination greatly increased the efficiency of system development, making the system easier to maintain, higher reusability, portability and better.K

9、ey words: Struts Online Course Selection System Hibernate摘 要IABSTRACTII1 前言12 系统开发工具与开发平台22.1开发模式22.2 JSP简介22.3 MVC开发模式22.4 Struts简介42.5 Hibernate简介52.6 MyEclipse简介62.7 JavaScript简介62.8系统运行环境73 系统分析83.1系统环境的初步调查83.2系统的可行性研究83.2.1经济可行性83.2.2技术可行性83.2.3社会可行性93.3详细调查93.3.1系统功能分析93.3.2系统业务流程分析103.4新系统逻辑

10、模型的提出113.4.1数据流程图(DFD)113.4.2数据字典分析134 系统总体设计164.1系统功能结构设计164.2 系统总体物理结构194.2.1系统逻辑结构194.3代码设计204.4数据库设计214.4.1数据库概念结构设计214.4.2数据库逻辑结构设计225 系统详细设计255.1功能模块设计25结论28参考文献29谢 辞301 前言随着教育事业的发展,人才的培养方法也与以前大不相同,以前一刀切的教育方式已经不适合现在的人才。所以,每个学生的爱好与兴趣也随着自身的发展差异越来越大,因此,学生的选课变成了新型教育发展的一大难题。每个课程涉及不同的部门,所选的学生也是来自不同班

11、级学院,假如按照以前人工安排选课,就会大大制约教育事业的发展。 随着计算机技术的发展,计算机网络的应用渗透到社会生活的方方面面,学校的管理也随之从原始的手工管理向现代的计算机管理过度。设计开发一个好的选课系统对于学校来说至关重要。通过计算机对选课进行管理,可以避免以前一些人为原因所导致的错误,强大的功能将使增删改查更为快捷便利,庞大的数据库可以存储上万条数据而且保密性好,可靠性高,管理操作全程都在计算机上完成,免去了一部分纸张的开销,经济环保,降低办公成本。实现学校对选课的系统化、规范化、自动化,从而提高学校的管理效率。J2EE平台的飞速发展,技术的成熟以及应用领域的不断扩大,为网上信息的交互

12、提供了一个良好的平台和方便的操作界面。由于J2EE平台基于用户需求的设计方法,使得该系统的使用更加的人性化、个人化、更贴近用户。以J2EE平台的构建思想来实现网上选课系统可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。2系统开发工具与开发平台2.1开发模式 目前管理信息系统系统开发,使用的开发模式大体上分为客户端服务器(ClientServer)模式和浏览器服务器(BrowserServer)两种模式。传统的CS模式在开发和维护成本、兼容性、操作界面和操作方法一致性、可扩展性等方面表现出很多问题,以WEB技术为基础的BS模式随着网络技术的发展越来越多地被应用到各类型的

13、管理系统中。和CS模式相比,BS模式的主要优点表现在客户端要求低,维护费用低。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。因此本系统的开发选择基于WEB的BS模式。2.2 JSP简介JSP(Java Server Page)页面是由HTML代码和嵌入其中的Java代码组成。在页面被客户端请求后,服务器对这些Java代码进行处理,然后将生成的HTML页面返回客户端的浏览器。Java技术具有简单易用、完全面向对象、与平台无关、安全可靠和面向Internet的所有特点。JSP页面一般包含JSP指令、JSP脚本

14、元素、JSP标准动作,以及JSP隐式对象。2.3 MVC开发模式 MVC(Model View Controller)最早在Smalltalk中出现,后来广泛应用于Java Web应用程序中1。MVC是一种设计模式,它强制性地把应用程序的输入、处理和输出分开。MVC把应用程序分成三个核心模块:模型(Model)、视图(View)和控制器(Controller),它们分担不同的任务2。图2-1显示了这三个模块的相互关系。图2-1 MVC组件类型的关系和功能Model:模型是应用程序的主体部分,包括业务逻辑层和数据库访问层。一个模型能为多个视图提供数据。View:视图是用户看到并与之交互的界面。视

15、图向用户显示相关的数据,并能接收用户的输入数据,但是它并不进行任何实际的业务处理。视图可以向模型查询业务状态,但不能改变模型。视图还能接受模型发出的数据更新事件,从而对用户界面进行同步更新2。Controller:控制器接受用户的输入并调用模型和视图去完成用户的需求。当Web用户单击Web页面中的提交按钮来发送HTML表单时,控制器接收请求并调用相应的模型组件去处理请求,然后调用相应的视图来显示模型返回的数据2。优点:整体结构清晰;易于维护和扩展;多个视图能共享一个模型;可以方便地改变应用程序的数据层和业务逻辑规则,因为模型是自包含的,与控制器和视图保持相对独立;控制器提高了应用程序的灵活性和

16、可配置性。2.4 Struts简介Struts有一组相互协作的类、Serlvet以及Jsp TagLib组成。基于Struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是MVC设计模式的一种变化类型。Struts 包含了丰富的标记库和独立于该框架工作的实用程序类。Struts提供了自己的控制器组件,并可以融合许多先进的技术来提供后台模型与前端试图。对后台模型来说,Struts可以与JDBC技术和EJB技术集成,或者与一些优秀的第三方软件包交互,如Hibernate,本系统就是选择了与第三方软件包Hibernate进行交互;在视图方面,Struts使用了JSP技术,并可

17、将标记库技术、JSP技术、Velocity模板、XSLT技术等能共同时用于表示层1。ActionServlet,Action 和ActionForm是Struts 三个主要的类。图2-2显示了Struts的MVC框架。图2-2 Struts的MVC框架视图View:就是一组JSP文件,在JSP文件中没有业务逻辑处理和模型信息,只有标签,标签可以是标准的JSP标签或客户化标签。模型Model:表示应用程序的状态和业务逻辑,业务逻辑通常由JavaBean或EJB实现。控制器Controller:控制器由ActionServlet类和Action类来实现ActionServlet:主要负责接受HTT

18、P请求信息,根据配置文件struts-config.xml的配置信息,把请求转发给适当的Action对象,Action根据用户请求调用相关的业务逻辑组件。配置文件Struts-config.xml:存储描述用户请求路径和Action映射关系的配置信息,在该配置文件中,每一个Action的映射信息都通过Action元素来配置。2.5 Hibernate简介Hibernate是对象/关系映射(ORM,Object/Relational Mapping)的解决方案,简单地说就是将Java对象与对象关系映射至关系型数据库中的表格与表格之间的关系,Hibernate提供了这个过程中自动对应转换的方案1。

19、Hibernate采用低侵入式(依赖性小)的设计,也即完全采用普通的Java对象(POJO),而不必继承Hibernate的某个基类,或实现Hibernate的某个接口。Hibernate是面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。Hibernate具有以下的优势:(1)开源代码;(2)具有详细的参考文档;(3)对JDBC仅做了轻量级封装,必要的话用户可以绕过Hibernate直接访问JDBC API;(4)具有可扩展性;(5)使用方便,容易上手;(6)Hibernate 既适用于独立的Java 程序,也适用于Java W

20、eb 应用,而且还可以在Java EE架构中取代CMP(Container-Managed Persistence),完成对象持久化的重任。(7)Hibernate可以和多种Web 服务器,应用服务器良好集成,并支持几乎所有的流行的数据库服务器3。图2-3 Hibernate体系结构2.6 MyEclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和Java EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的Java EE集

21、成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, JavaScript, SQL, Hibernate4。在结构上,MyEclipse的特征可以被分为Java EE模型、WEB开发工具、EJB开发工具、应用程序服务器的连接器、Java EE项目部署服务、数据库服务、MyEclipse整合帮助七类。对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任意模块进行单独的扩展和升级4。2.7 JavaScript简介Java

22、Script 是一种新的描述语言,此语言可以被嵌入 HTML或JSP 的文件之中。通过 JavaScript 可以做到回应使用者的需求事件 (如: form 的输入) 而不用任何的网络来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给服务端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程序所处理。可以想像成有一个可执行程序在客端上执行一样。2.8系统运行环境系统运行环境主要有软件运行平台和硬件运行平台。(1)软件运行平台本系统设计运行在Windows2000/NT/XP操作系统环境下,因为该系统用户界面友好,简单易懂,易学易用。表2-1软件环境分

23、类名称版本语种操作系统Windows Server2000简体中文数据库平台My SQL2005简体中文开发工具MyEclipse8.0英文客户端软件MS IE6.0简体中文(2)硬件运行平台见表2-2。表2-2 硬件环境服务器最低配置推荐配置应用和数据库服务器1CPU:P4 2.0G1CPU:P4 2.8GMem:512MMem:2GHD:40GHD:120GMem:512MMem:1GHD:80GHD:120G3系统分析3.1系统环境的初步调查在网上选课系统开发项目中,为了出色地完成该系统的开发,对即将使用该系统的学校整体环境进行了基本调查。因此,我对系统环境进行了初步了解。系统环境的初步

24、调查采用的主要方式是通过对学校的老师以及学生的采访以及网上问卷调查,从上到下与各级负责部门进行交谈,对网上选课中的各个管理环节有了初步的了解。3.2系统的可行性研究系统的可行性研究在系统的整个过程中占有很重要的地位,它决定所选项目是不是可能实现或值得去实现。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。它主要包括技术、经济、运行等方面的可行性:现有技术是否能够实现本系统的设计开发;经济上是否值得去实现;是否能够在一般平台下运行等3.2.1经济可行性 由于该系统的设计开发属于毕业设计即信息管理与信息系统(本科)教学的最后一个环节,人力消耗免费,指导老师义务指导,因此成本

25、非常低。该系统的开发将给学校部门节余人力,降低了教务人员的工作量和劳动程度,提高了工作效率,从而为学校带来很好的经济效益。 因此,该系统的开发在经济上是可行的。3.2.2技术可行性鉴于本人在过去一年中曾使用“Java+SQL Server2000”开发过图书管理系统及电子商务系统,并且在毕业实习的学习和实践中对开发管理信息系统又有了新的认识和提高,使自己在开发管理信息系统方面的技术更加成熟。另外,现有的技术已经较为成熟,该学校的硬件、软件等各项条件已经具备,考虑到给予的开发期限相对充裕,现有的技术条件可以达到该系统的功能目标,预计系统可以在规定的期限内完成开发。因此,该系统的开发在技术上是可行

26、的。3.2.3社会可行性该系统没有侵犯任何人的著作权,也没有侵犯到国家、集体或他人的利益。系统界面友好,操作简单,适用于不同教育程度的用户。另外,该系统以企业用户提出的系统功能、性能及实现系统的各项约束条件为依据,能过很好的在企业管理中得到应用。从以上几方面分析来看,开发该系统是完全可行的。3.3详细调查3.3.1系统功能分析本系统是为各大高校制定的个人选课及管理的现代化信息平台,学生能过浏览器进行网上选课申请和并且可以查询自己的选课计划及所选课程进度。同时,教师人员可以通过游览器进行课程添加、删除和修改。管理员可以通过浏览器直接完成对用户的增、删、攺等用户管理功能,这无论对于学生、教师和管理

27、员来说都节省了大量的工作量。充分利用网上选课系统来提高教学选课管理的效率,实现全面网络化、规范化和集成化。系统分为以下四大模块来实现以上设计思想:用户登录模块: 根据用户名,密码,用户类别 转发用户到不同的模块。学生模块: 查看课程,选报课程,撤销选报课程,查询个人选课计划,重新登录,学生个人资料修改,查询成绩。教师模块: 查询课程信息,录入一门新的课程信息,修改一门课程的相关信息 管理员模块:查询选课情况,设置选课时段,选课申请处理,查询用户,添加用户,删除用户,制订选课规则等。3.3.2系统业务流程分析数据流程分析的过程是:按业务流程图理出业务顺序,分析信息的流动、传递、处理和存储等情况,

28、核对相应的数据和报表模型,绘制出完整的数据流程图。在分析的过程中可以发现和解决数据流程不畅、前后数据不匹配、数据处理不合理等问题,可以得到一个通畅的数据流程。 数据流程分析可以按照自顶向下、逐层分解、逐步细化的结构化分析方法进行,通过分层的数据流程图实现。数据流程图不但可以表达数据在系统内部的逻辑流向,而且可以表达系统的逻辑功能和数据的逻辑变换。 图3-1 流程图图例图3-2 网上选课主要流程图由教师制订选课计划,然后交给管理员按照各个选课计划来编排选课,编排完成后输入系统。学生在规定时间按照选课计划来进行选课,选课无误后生成课程表。每个学期末由管理员输入学生成绩,生成成绩表。3.4新系统逻辑

29、模型的提出3.4.1数据流程图(DFD)数据流图是在对系统调研阶段绘制的业务流程图进行分析的基础上,将信息处理功能和彼此之间的联系自顶向下、逐层分解,在逻辑上精确地描述新系统应具有的功能、数据输入、数据输出、数据存储及数据来源和去向。即在对客户关系管理子系统业务流程进行认真分析和研究的基础上,按信息系统中应有的数据流程和数据结构来分析系统内的信息流动、存储、处理加工和流出信息等详细情况。图3-3 0层数据流程图图3-4 1层数据流程图图3-5 选课管理分解图 图3-6 成绩管理分解图图3-7 课程管理分解图3.4.2数据字典分析数据流程图分析,只是对数据处理和彼此之间的数据联系进行了说明,为了

30、进一步明确数据的详细内容和数据处理过程,应将最底层数据流程图中的部分数据流、数据存储、数据元素、数据处理和外部项通过数据词典描述清楚,以便于此后系统设计的进行。表3-1 “数据流”条目举例数 据 流系统名:网上选课 编号:F1条目名:课程信息单 别名:课程信息来源:“学生”外部项去处:“查询课程“数据处理数据流结构:课程信息单=课程号+课程名+任课老师+学时+学分+上课时间简要说明:1学生可通过自身规定的课程查询课程信息 2课程信息可由教师修改修改记录:编写黄振宇日期2010-5-10审核黄振宇日期2010-5-11表3-2 “数据元素”条目举例数 据 元 素系统名:网上选课 编号:条目名:上

31、课时间 别名:所属数据流:课程信息存储处:课程信息,选课信息数据元素结构:代码类型: 字符型 长度: 20取值范围及含义:第1位:课程的年份 第2位:所属学期 第3 位:上课的时间简要说明:一个学生同一时间仅允许一上一门课程修改记录:编写黄振宇日 期2010-5-11审核黄振宇日 期2010-5-11表3-3 “数据存储”条目举例数 据 存 储系统名:网上选课 编号:D2条目名:成绩信息库 别名:存储组织:每个选课一条记录记录数:约4000主关键字:选课代号记录组成:选课代号+学生代号+课程代号+所获学分+课程成绩+备注简要说明:1、假如有特殊情况(错选,重修)等备注中说明2、一个课程可给同一

32、个学生多次选取,但要在备注中说明修改记录:编写黄振宇日 期2010-5-11审核黄振宇日 期2010-5-11表3-4 “数据加工”条目举例数 据 加 工系统名:网上选课 编号:3.2条目名: 选课资格确定 别名:输入:“所选课程“信息流“课程信息”数据存储输出:“资格信息据流处理逻辑:1、教师按照教学计划给每个学生选取资格 2.按照资格分配相应的课程 3.按照课程给确定选取的先后简要说明:教师输入资格信息修改记录:编写黄振宇日 期2010-5-11审核黄振宇日 期2010-5-11表35 “外部项”条目举例外 部 项系统名:网上选课 编号:条目名:学生 别名:输入数据流:选课信息,学生信息输

33、出数据流:选课单主要特征:客户:即本系统中提交信息的主体,其主要特征是学号、名称、性别、学院、班级等简要说明:本系统有学生提供选课信息,选课无误后生成选课表。学期末考试完成后由管理员输入成绩信息,可供学生查询修改记录:编写黄振宇日 期2010-5-11审核黄振宇日 期2010-5-114 系统总体设计 根据上述需求分析,系统中的功能模块分别为:选课管理、成绩管理、课程管理、系统管理。各功能模块的具体功能如下:选课管理:对选取课程进行增删改等操作,课程表的生成成绩管理:对课程成绩增删改等操作,成绩表的生成课程管理:对学生的选课资格与时间进行安排规则管理: 对选课规则进行安排系统管理:对系统的用户

34、信息进行添加、修改、删除操作,对系统操作日志进行修改、删除操作。输入 处理 输出学生信息选课结果查询结果修改结果成绩信息分析选课信息课程信息查询需求修改需求服务申请运行参数选课管理成绩管理查询修改选课安排管理系统管理 图41 客户关系管理基本功能4.1系统功能结构设计系统设计工作技术性强,涉及面广,且内容复杂,用结构化设计方法建立一个具有良好结构的客户关系管理系统,下面是用HIPO图为工具进行模块结构设计。根据系统分析得出的新系统逻辑结构进行系统的设计,由此可建立新系统的总H图。可表示自顶向下分解所得系统的模块层次结构。系统功能结构图如图42图所示.图 42 系统功能结构图对上面的模块分别进行

35、描述,包括每一模块的输入输出关系、处理内容、模块的内部数据和模块间的调用关系。IPO图如下。IPO 图系统名:成绩管理子系统 制图者:黄振宇模块名:成绩录入管理 日期:2010-5-11由下列模块调用:成绩管理调用系列模块:成绩录入,成绩核对输入:课程成绩输出:成绩表处理内容:管理员把成绩录入成绩录入后再由教师进行核对教师查询成绩后安排重修等操作备注:IPO 图系统名:选课管理子系统 制图者:黄振宇模块名:学生选课管理 日期:2010-5-11由下列模块调用:选课管理调用系列模块:选课修改输入:选课信息输出:课程表处理内容:学生按照所查询的信息选取课程系统根据学生的权限核对所选课程是否合法确认

36、无误后存入课程表备注:IPO 图系统名:课程管理子系统 制图者:黄振宇模块名:选课资格管理 日期:2010-5-11由下列模块调用:课程管理调用系列模块:选课资格修改输入:资格信息输出:选课表处理内容:教师输入各院系的选课权限系统根据权限制定选课表系统安排各院系的选课时间4.2 系统总体物理结构从学校的选课模式出发,每个子系统功能相对独立。子系统之间有必要的数据联系,同时为信息服务系统提供查询信息。4.2.1系统逻辑结构本系统采用的是客户端/服务器(Client/Server)逻辑结构模型。该模型以(数据库)服务器为中心组成计算机数据处理网络,即客户机/服务器结构模式由服务器、网络与通信设备、

37、用户终端(客户机)等硬件组成。其软件组成有数据库管理系统(服务器端)、通信软件(服务器,客户机)、应用软件(客户终端)。服务器端的程序模块一般是公用的、全局性的功能模块,如公用的业务处理逻辑、数据管理功能等。客户端运行的程序一般是接口程序模块、用户操作功能处理和专用模块。图43 信息系统软件分布示意图客户机/服务器模式的通信方案有前台数据处理方案和后端数据处理方案。前台方案是将数据从数据库读取到前端(客户终端)处理完后回送到数据库,后台方案是将处理方法(程序)发到服务器,在服务器上直接处理。客户机/服务器结构模式是以数据库服务器为中心的、在数据库管理系统支持下的两层结构模型。在这种结构模式中用

38、户操作界面和处理模块布置在客户机上,数据存储在服务器上的数据库中。客户机/服务器两层结构模型的主要优点是可以减少网络上交换的数据量,并提高系统的运行效率和网络的稳定性。在这种结构中,当把一些通用的数据管理与处理逻辑放置在服务器上后,加上数据库管理系统(DBMS)提供的数据管理与访问功能,客户机上的应用程序要处理数据时只需发送请求(通常是一条语句),从而避免了将数据从数据库中读取到客户机,经过处理后再送回数据库的繁杂过程。对于数据的查询,也是在服务器端经过过滤后传送所需的结果集,而不是全部数据集到客户端再筛选。服务器上的通用处理逻辑可以为多个客户应用程序提供服务,避免了模块之间的冲突,便于系统管

39、理,有效地提高了系统的运行效率和稳定性。4.3代码设计学院编号:年级+学院号+系别号+班别号+学号如: 06信管三班 06 08 23 10 班别号 系别号 学院号 年级号上课时间代号:年份+学期+星期+节数如 09年上学期周一第三节 09(年份)up(上学期)A(周一)3(节数)2009 up A 3 节数 星期 学期 年份教师号:部门号+教师号如 131 3 教师号部门号4.4数据库设计数据库在一个信息管理中占有非常重要的地位,数据库结构设计的好坏直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据库存储的效率,保证数据的完整性和一致性。4.4.1数据库概念结构设计

40、 根据上面的设计规划出的实体有:学生信息实体,选课信息实体,课程信息实体,教师信息实体,院系信息实体。各实体的描述E-R图如下: 网上选课系统E-R图4.4.2数据库逻辑结构设计由于客户关系管理系统的数据处理量不是很大,所以选择了MySQL数据库作为后台处理数据库。MySQL数据库是中小型数据库管理软件的最佳选择,它是在Windows环境下开发的一种全新的数据库系统,具有大型数据库所具有的一些基本的功能,支持事务处理和数据库加密,同时具有用户组和多用户管理的功能,并且可以设置用户组或用户的密码和权限,保证数据库的安全。数据库的概念结构设计完毕后,可以将上面的数据库概念转换成某种数据库系统多支持

41、的实际数据模型,也就是数据结构模型。学生表(sc_elective):用于记录学生的详细信息教师表(sc_teacher) :用于记录教师的详细信息课程表(sc_course) : 用于记录课程信息,包括上课时间等部门表(sc_spec) : 用于记录学校各部门的信息,包括专业学院等选课表(sc_elective) : 用于记录学生的选课记录,已经用来登记该课的成绩等规则记录表(sc_elec_rule):用于记录部门的选课规则规则表(sc _rule) :用于记录规则的详细信息管理员表(sc _manager) :用于记录管理员的详细信息表4-1 学生表(sc_elective)序号字段名代

42、码类型长度(字符)1学生编号stu _idCharacters (50)1-502姓名nameCharacters (50)1-503密码pasCharacters (50)1-504性别sexCharacters (10)1-105院系号s_idInt(12)1-12表4-2 教师表(sc_teacher)序号字段名代码类型长度(字符)1教师编号Teacher_idCharacters (50)1-502姓名nameCharacters (50)1-503职称TitleCharacters (50)1-504性别sexCharacters (50)1-505院系号s_idCharacters

43、 (50)1-506备注IntruductionCharacters (256)1-256表4-3 课程表(sc_course)序号字段名代码类型长度(字符)1课程编号Course_idCharacters (50)1-502课程名customer _nameCharacters (50)1-503学分Creditdouble4学时periodInt(12)1-125任课老师Teacher_idInt(12)1-126课程性质Cour_natCharacters (25)1-257上课时间TimeCharacters (50)1-508课程介绍IntroductionCharacters (5

44、0)1-509上课人数numberInt(12)1-12表4-4 选课表(sc_elective)序号字段名代码类型长度(字符)1选课编号Elecvive_idInt(12)1-122课程编号Course_idCharacters (50)1-503学生编号stu _idCharacters (50)1-504学分Creditdouble5成绩markInt(12)1-12备注IntruductionCharacters (256)1-256表4-5 部门表(sc_spec)序号字段名代码类型长度(字符)1院系号spec_idInt(12)1-122院系名nameCharacters (50)

45、1-503父院系号Parent_idInt(12)1-12表4-6 规则记录表(sc_elec_rule)序号字段名代码类型长度(字符)1编号idInt(12)1-122用户名User_idInt(12)1-123规则idrule_idInt(12)1-12表4-7 规则表(sc _rule)序号字段名代码类型长度(字符)1编号idInt(12)1-122课程号course_idCharacters (50)1-503日期dateCharacters (50)1-50表4-8 管理表(sc _manager)序号字段名代码类型长度(字符)1编号idInt(12)1-122管理员权限Respon

46、seCharacters (50)1-503密码passwordCharacters (50)1-505 系统详细设计5.1功能模块设计(1)登陆界面本系统用户按部门划分,不同的部门权限也不同。当输入用户名和密码后,系统内部进行控制,如果输入密码正确,则进入相应的系统,否则将显示错误信息。 登陆界面验证代码本系统用的是Struts 2自带的拦截器作为验证 <validators> <field name="txtUsername"> <field-validator type="requiredstring"> <

47、;message>用户名不能为空!</message> </field-validator> </field> </validators>(2)选课权限设置该界面可供教师或管理员制定某学院或者某专业的选课计划核心代码 运用了Struts 2自带的标签库,迭代输出<select name="pid" onchange="change()" id="pid" name="pid"><option value="$father.id &qu

48、ot; id="head">$father.name </option><s:iterator value="speclist" var="sl"><option value="$sl.id ">$sl.name</option></s:iterator><option value="1">-</option></select></td><td id="child&q

49、uot;><select id="child" name="child"><option value="0">-请选择-</option><s:iterator value="childlist" var="ch"><option value="$ch.id ">$ch.name</option></s:iterator></select>(2)选课管理 学生通过登录之后,系

50、统自动查询学生的选课权限,然后根据选课权限在课程中查找出相应的课程,然后显示。学生选取自己相关的课程后系统自动生成课程表 。public List findAllCourse(String uid)List<ScCourse> temp=sc.findAllSelection(uid);List<ScElective> eleclist=sed.findByStuId(uid);if(temp!=null && temp.size()>0)for(int i=0;i<eleclist.size();i+)ScCourse cour=sc.fi

51、ndById(eleclist.get(i).getCourId();temp.remove(cour);else return null;return temp;结论通过最后两个多月的毕业设计,我对WEB服务器、数据库、JAVA、JSP、JavaScript、及J2EE和STRUTS架构等系列知识都有了一定的了解。使用JSP开发页面的能力也有了很大提高。由于在此之前对于J2EE和STRUTS架构知识的了解不多,所以从一开始就碰到许多困难。还有Java开发中文乱码的问题,使得我在很长一段时间内找不到问题的症结,后来在看了有关JAVA编程方面的资料后才将问题解决。在整个设计阶段感受最为深刻的是掌

52、握学习的方式和解决问题的方法。要求我们一定要通过实践才能找到解决问题的方案。在整个毕业设计的过程中,我深刻的体会到了这一点的重要性,也牢记主了这一点,在今后的学习和研究中我也会继续将这种方法延续下去。同时,经过为时两个月的劳动,我对本专业知识有了更深刻的了解:第一、对系统进行需求分析、规划。第二、深入掌握了系统所采用的技术,对MVC设计模式、Struts与Hibernate技术有了更深入地了解,并增强了自主学习意识。第三、编写系统相关的代码和展示页面,实现了注册、查询、个人信息管理、后台管理、课程管理等功能。第四、本文实现的网上选课网站,实现了选课的网络化,满足了学生与学校的需求,利用该网站,

53、学生选课能够方便快捷的实现。既节省了时间,又提高了效率。第五、在老师指导论文的过程中,让我体会到了应该经常性的进行沟通,及时发现不足,并根据老师的意见集合系统实施进行修改。同时,必须按时完成双方一起制定的计划,这样才能保证系统的顺利开发。第六、在整个开发过程当中,本人经历的是边学边做的过程,从而补充了在大学四年的学习中所遗漏的知识,并巩固了大学四年所学的知识。这也算是为本人的大学学习生涯画上一个圆满的句号。【参考文献】 1 邬继成:J2EE开源编程精要15讲整合Eclipse、Struts、Hibernate和Spring的Java Web开发M,电子工业出版社2008版。2 孙卫琴:精通St

54、ruts基于MVC的Java Web设计与开发M,电子工业出版社2004版。3 孙卫琴:精通Hibernate : Java对象持久化技术详解M,电子工业出版社2006版。6 蔡立军,瞿亮:Oracle9i关系数据库实用教程M,中国水利水电出版社2004版。7 张海藩:软件工程M,人民邮电出版社2006版。8 Bruce Eckel:Thinking in Java (Four Edition)M, China Machine Press, 2007。9 陈佳,曹妍:软件开发实验与实践教程M,清华大学出版社2007版。10 Grady Booch, James Rumbaugh, Ivar J

55、acobson:The Unified Modeling Language User Guide (Second Edition)M, China Machine Press。谢 辞 时光飞逝,短暂的四年大学生活即将结束,但是,即使做完全部的事情,合上扉页,四年的生活也绝不仅如时光逝去那样匆匆无痕。毕业在即,论文的撰写使我有机会对过去的学习工作生活作个总结。四年的时间中,许多人给了我无私的指导和帮助,给我生活和学习平添了许多乐趣,下面的致谢永远也表达不完四年来他们对我的指导和帮助。衷心地感谢我的毕业设计指导老师田艳教授,从毕业设计规划,到查找相关资料,设计模型,具体实施,设计完成,整个大致的流程中,老师都给予了我耐心的指导,在她专业教导下我在系统设计中少走了许多弯路,让我顺利的完成了毕业设计。感谢母校的辛勤培育之恩,各位领导、老师、同学的鼎力相助,使我学到了许多新的知识,同时也更懂得了一些做学问的道理,这将是我人生中的一笔宝贵财富。最后,我要感谢我的父母,没有他们在我学习生涯中的无私奉献和默默支持,没有他们的关心和理解,我将无法顺利完成今天的学业。感谢北京理工大学珠海学院每一个关心我的人,谢谢- 37 -

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!