网上选课系统毕业论文(含外文翻译)_第1页
网上选课系统毕业论文(含外文翻译)_第2页
网上选课系统毕业论文(含外文翻译)_第3页
网上选课系统毕业论文(含外文翻译)_第4页
网上选课系统毕业论文(含外文翻译)_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、桂林航天工业学院毕业设计论文摘 要随着计算机及互联网的普及,网络选课系统作为高校信息化的一个重要组成部分,正逐渐改变着传统的人工教务管理选课模式,逐步提高着教务管理人员以及师生的工作效率。应用此系统,学生可以通过网络在任意地点、指定的时间进行选课。网络选课系统具有无可比拟的优势,如大量数据的存储与查询,信息的完全公开,而且通过计算机系统的设计可以做到公平公正,尽量减少错误。在此背景下,充分利用现有网络资源,建立网上选课系统势在必行。目前的选课系统的实现方式有很多种,既有c/s结构的,也有b/s结构的,总体来说,基于web的b/s结构的选课系统是最适合当前高校教务管理需要的,因此是目前的发展主流

2、。 本系统是基于jsp平台进行开发的,主要开发工具是myeclipse和sql server 2008。本系统由学生选课模块、教师信息管理模块、学生信息管理模块、课程管理模块、课程分配模块、成绩录入模块、留言板管理模块等组成。本文通过分析b/s结构的特点并结合选课的实际情况,提出了基于浏览器/服务器结构网上选课系统的基本设计思想,简要介绍了系统各功能模块及数据库的设计,着重讨论了用 myeclipse技术和sql server 2008开发网上选课系统时的数据库访问技术和动态网页制作技术,并给出了部分实现代码。通过该系统,使学生可以方便地在校园网上进行网上选课。该b/s结构的系统在window

3、s xp系统和myeclipse平台下开发完成,使用java作为myeclipse的开发语言,sql server 2008作为数据库。系统有较高的安全性和较好的性能。其中连接数据库的字符串可以随时在hibernate里修改,并经过编码加密,增加了灵活性,保护了数据库的安全。代码尽量使用存储过程和尽量减少数据库连接的打开时间等手段来提高性能。 本文中除了有对程序的系统分析、总体设计、数据库设计、功能实现等主体部分外,在这之前还介绍了与网上选课系统相关的信息、iis介绍、iis与jsp的结合等的基本内容及发展情况。关键词:网上选课,b/s结构,myeclipse,数据库管理系统abstractw

4、ith the popularity of computers and the internet,online network elective system as a important part of college information.it is gradually changing the traditional of artificial educational administration elective.and also gradually increase the efficiency of teachers and students.students could cho

5、ose courses anywhere anytime via internet by this system.the network elective system has an unparalleled advantage,for example,like large amounts of data storage and query,disclosure of information,and it can be fair,justice and minimize errors by computer design.in this context,it is necessary to e

6、stablish a online register system by full use of exsiting network resources.there are many ways to realize a network elective system,not only c/s structure,also exsits b/s structure.overall,the system based on b/s structure is the best suited to current needs.so it is the trend of development.this s

7、ystem is designed on the base of jsp platform, and i use myeclipse as the exploit tool and use sql server 2008 as database. this system is made up of course selection module, teachers info management module, courses info management module, course arrangement module, messages management module, etc.t

8、his paper gives the basic design idea of the b/s structure based online course elect system by analyzing the characteristic of the b/s structure and combining with the actual public elective courses conditions of our schoolit introduces the function module and database design briefly,followed by a d

9、iscussion on database accessing technology and the active page technology of the course elect system based on myeclipse and sql server 2008by using this system,students can elect courses online efficientlythis b/s structure system is developed under myeclipsei platform in windows xp operating system

10、, using java as myeclipse development language and sql server 2008 as the database. this system is of higher security and better performance. the character string, which is used to connecting to the database, can be modified at any time in the file “hibernate”. the string is encoded and encrypted, i

11、ncreasing flexibility of the system and security of the database. in code, making use of stored procedure and minimizing the database opening time to improve performance of the system. this paper includes the system analysis ,the main designing ,the database designing, the function designing and , b

12、efore this , some basic knowledge and present development of the programs mentioned above. key words: online course elect, b/s structure, myeclipse, sql server 2008, hibernate目录引言61.1 开发背景61.2 系统构架61.3 系统目标6第二章 选题的目的与意义72.1国内外研发现状72.2课题研究的目的82.3课题研究的意义8第三章 课题的可行性分析93.1 课题调研93.2 需求分析93.2可行性分析93.3系统配置

13、需求10第四章 主要技术介绍114.1 j2ee概述114.2 j2ee的优势114.3javascript介绍124.4 框架的选择124.4.1 struts2简介124.4.2 hibernate简介134.4.3 spring简介13第五章 系统开发工具及容器155.1 开发工具155.2 数据库的选择155.2.1 sql server 2008 简介155.3 jdk版本的选择165.4 容器165.4.1 tomcat简介16第六章 网络选课系统总体设计176.1 需求分析176.1.2 系统流程176.1.3 用uml用例图描述196.2系统的分层设计20第七章 详细设计217

14、.1 数据库217.1.1 数据库设计217.1.2 数据表217.2 web层的设计237.2.1 jsp简介237.2.2 extjs简介247.2.3 字符集编码问题247.3 ejb层的设计247.3.1 实体bean的设计247.3.2 数据库映射与连接267.4 网络选课系统的实现277.4.1 用户登录277.4.2 权限管理307.4.3 管理员功能317.4.4 学生功能387.4.5 教师功能42第8章 网络选课系统的性能优化方案448.1 基于软件的优化措施448.1.1 tomcat服务器性能调优448.1.2 java虚拟机性能调优458.1.3 操作系统性能调优46

15、8.1.4 数据库服务器性能调优468.2基于硬件的优化措施478.2.1服务器性能优化478.2.2 web服务器集群技术48第9章 系统测试与维护499.1 系统测试499.2 系统实施中遇到的问题49第10章 结论50致谢52附录53外文资料原文59译文61引言1.1 开发背景 随着计算机及互联网的普及,传统的教务人工管理已经很难适应新环境。传统的选课方式是随堂报名,无法预见上课人数,浪费教学资源。以现代网络技术环境为依托,将传统选课模式转换为利用现代网络技术进行选课操作和管理的网上选课系统已经成为一项重要的改革。现有选课系统存在以下不足:(1) 系统运行不够稳定选课系统时常无法登陆,这

16、显然是网络服务器的不稳定造成的。应在发布前进行充分的性能测试。(2) 操作复杂,不够人性化网上选课应满足操作简单方便,但现有系统忽略了操作的简单性,从而导致选课要经过多个步骤。系统界面不友好,不够人性化。(3) 系统性能差没有进行充分的优化,导致在选课高峰期的时候,大量学生同时选课时经常出现登陆和选课速度极慢,甚至出现服务器死机瘫痪现象,导致某些学生不能选课1.2 系统构架本文重点研究基于j2ee的网络选课系统。采用了j2ee技术作为系统构架开发。本系统体现了较为先进的设计思想,主要有以下几点:(1) 系统采用较为流行的j2ee技术体系,具有良好的可伸缩性和跨平台性,为日后功能的扩展提供了良好

17、的升级空间。(2) 采用mvc模式,将系统的表示层、逻辑层和web表示层分离,便于日后系统的开发与维护。(3) 应用连接池和线程池,使系统可同时容纳大量用户。1.3 系统目标本课题设计并实现了一个基于网络平台的选课系统,具体的实现目标是:(1) 教务管理模块教务管理员通过该模块,可以发布教学公告、发布选课信息、发布课程信息、制定系统开放时间、发放学生及教师密码等。(2) 学生选课模块学生通过该模块,可以查询开课信息、查看公告、选课、退课、修改密码、修改个人信息等。第二章 选题的目的与意义2.1国内外研发现状我国高校都实行了学分制,它的核心是允许学生自由选课,即把学习的自主权交给学生。在这里,学

18、生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。在高等学校的教务管理工作中,课程表的编排是一项十分复杂、棘手的工作。在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾,例如:两位教师不能同一时间在同一班级上课、一位教师不能在同一时间上两门课等等。利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶。国外的教学科研软件与国内相比开发的早而且比较

19、成熟。早在七十年代末,美国就建成了nsfnet(国家科学基金网),其课题的申报及课题的进展情况汇报都在网上进行。其网上教学教务管理系统也十分完善,世界各地的学生可以坐在家里通过互联网完成入学报名、选课、考试、毕业论文、取得学位这一学习生活的全过程。目前,国际上已具规模的远程教育学校就有数百所之多,网上教育正在各地发挥着巨大的作用,为世界各国培养出大批人才。所有这些都表明,基于internet的校园网的应用已深入到校园内的各个方面。随着教育产业化进程的逐步推进,各大高校纷纷合并,走上了强强联合、资源共享的路子。高校的规模不断扩大,如何合理利用教学资源,有效地加强教学管理工作,已成为各大高校十分关

20、注的问题。目前,在教学管理方面,特别是学生学籍管理、成绩管理等方面都普遍采用了网络化管理技术,而对于毕业设计这一重要的教学环节,和其他教学课程一样,普遍采用传统的单机管理模式,主要进行毕业设计基本信息和成绩的输入输出工作,而对于毕业设计的选题、毕业设计过程中管理,以及毕业设计效果的统计分析等工作还没有纳入管理系统中。目前随着教学改革的不断深入,学校办学规模的不断扩大,如何有效地增强教学管理水平,充分调动学生的学习积极性,提高毕业设计的教学质量是各高校教学管理工作的重点之一。目前,毕业设计的双向选择和毕业设计过程的动态跟踪与交流己成为毕业设计环节教学改革的重要内容仁,英国诺丁汉大学开发了专门的管

21、理系统实现了毕业设计的网上双向选择,国内南开大学已开发了毕业设计网站,为毕业设计的选题、师生交流和毕业设计成绩的管理提供了良好的环境,取得了良好的效果。2.2课题研究的目的(一)掌握采用internet的tcp/ip协议,以b/s方式,java编程技术,多媒体技术。(二)掌握一种多任务多用户操作系统(三)jsp的动态网页和sql server 2008大型的数据库。(四)学会使用某种开发工具,如:myeclipse等。(五)培养相互合作的团队精神。2.3课题研究的意义 学生选课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的

22、信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 因此,开发这样一套

23、软件成为很有必要的事情,在下面的各章中将以开发一套学生选课系统为例,谈谈其开发过程和所涉及到的问题及解决方法。本文中所做的主要工作如下:(一)介绍了个性化页面的背景及生气了sql server 2008+myeclipse+hibernat系统的一般原理;(二) 阐述整个个性化页面生成系统的系统结构及工作原理;分析了系统实现中的特殊性、难点和重点。(三) 设计实现用户管理、课程管理、选课信息录入管理、新生信息录入管理、课程的浏览和查找、学生查找等jsp页面 。(四) 分析并解决实现中的若干技术问题。 (五) 建立完整的网上选课,进行测试并分析结果。第三章 课题的可行性分析3.1 课题调研(1)

24、与实践活动和相关的文件和资料由教师提供。(2)本课题要求学生有熟练的asp.net开发能力,有较强的自学能力以及一定的关系数据库理论开发功底。(3)具有对复杂表进行处理的能力。(4)具体问题再做详细调查研究并与指导老师面谈。3.2 需求分析学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视。是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所 以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率 低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都

25、带来了不少的困难。本系统具体有以下功能:个人信息:包括学生和学生的个人资料。课程计划:计划课程的开课时间,上课地点,上课老师等信息。管理功能:课程发布,修改,删除。学生,老师用户的添加删除。新闻的发布和删除和修改。教师用户:教师可以修改密码,查看课程和选修自己课程的学生列表以及查看新闻。学生用户:选修课程,可以取消选择。条件查询:用户可以查询自己所需的资料。退出系统。3.2可行性分析(一)经济性系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。该系统可以容易实现学生,老师与学校之间的联系,在internet上实现完成部分教务工作,提高办事效率,和周期。(二)技术性随着互联网的

26、蓬勃发展,越来越多的机构将科研管理与internet融合到一起,以方便个高校管理。在这样一个社会背景下,基于windows和 sql server 2008,运用先进的jsp技术,采用b/s模式开发的学生网上选课系统,将学生、老师、管理员、有机地结合在一起,有效地提高管理水平和效率。随着科学技术的不 断提高,计算机科学日渐成熟,基于以上的技术在现今比较容易实现。(三)操作性界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。3.3系统配置需求(1)服务器配置硬件平台:cpu:p4 1.8ghz以上;内存:256mb以上。软件平台:操

27、作系统:windows 2008 server;数据库:sql server 2008;开发工具包:jdk version 1.6.0_10;jsp 服务器:tomcat 6.0;第四章 主要技术介绍4.1 j2ee概述j2ee(java 2 platform enterprise edition)是sun公司定义的一个开发分布式企业级应用的规范。它提供了一个多层次的分布式应用模型和一系列开发技术规范,与传统的互联网应用程序模型相比有着不可比拟的优势。j2ee技术是一个开放的、基于标准的开发和部署的平台,用于构建n层、基于web、以服务端计算为核心、模块化的企业应用。j2ee同时也是所有兼容j

28、2ee标准的应用服务器产品的统一标识。j2ee是一种利用java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。j2ee技术的基础就是核心java平台或java 2平台的标准版,j2ee不仅巩固了标准版中的许多优点,例如编写一次、随处运行的特性,同时还提供了对 ejb(enterprise javabeans)、java servlets api、jsp(java server pages)以及xml技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。j2ee体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩

29、展性的应用的需求。通过提供统一的开发平台,j2ee降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持enterprise javabeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。4.2 j2ee的优势j2ee为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:保留现存的it资产: 由于企业必须适应新的商业需求,利用已有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。由于基于j2ee平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。 高效的开发: j2ee允许公司把一

30、些通用的、很繁琐的服务端任务交给中间件供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。 支持异构环境: j2ee能够开发部署在异构环境中的可移植程序。基于j2ee的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于j2ee的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。可伸缩性: 企业必须要选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于j2ee平台的应用程序可被部署到各种操作系统上。稳定的可用性: 一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需

31、要。4.3javascript介绍javascript 是一种新的描述语言,此语言可以被嵌入 html或jsp 的文件之中。通过 javascript 可以做到回应使用者的需求事件 (如: form 的输入) 而不用任何的网络来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给服务端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程序所处理。可以想像成有一个可执行程序在客端上执行一样。4.4 框架的选择本系统选用的是当下最流行的ssh框架整合搭建,采用struts2 2.0,hibernate3.2。可以更好的完成和体现mvc模式,也可以更好的体现j

32、ava的面向对象思想及接口编程习惯。4.4.1 struts2简介struts2 是一个web应用框架。它不是一个struts的新的发布版本,而是一个全新的框架。struts2 是第二代基于model-view-controller (mvc)模型的web应用框架。 struts2是java企业级web应用的可扩展性的框架。struts2的体系结构与struts1的体系结构的差别巨大。struts2以webwork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与servlet api完全脱离开,所以struts 2可以理解为webwork的更新产品。

33、 struts2结构struts2的体系与struts1体系的差别非常大,因为struts2使用了webwork的设计核心,而不是struts1的设计核心。struts2中大量使用拦截器来处理用户的请求,从而允许用户的业务逻辑控制器与servlet api分离。图4-2是struts2的体系结构简图。图4-2 struts2的体系结构简图struts2框架的大概处理流程如下:(一)浏览器发送一个请求。 (二)核心控制器filterdispatcher根据请求决定调用合适的action。 (三)webwork的拦截器链自动对请求应用通用功能,如验证等。 (四)回调action的execute方法

34、,该execute方法根据请求的参数来执行一定的操作。 (五)action的execute方法处理结果信息将被输出到浏览器中,支持多种形式的视图。4.4.2 hibernate简介hibernate是一种java语言下的对象关系映射解决方案。 它是使用gnu宽通用公共许可证发行的自由、开源的软件。它为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架。它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用hibernate。hibernate不仅负责从java类到数据库表的映射(还包括从java

35、数据类型到sql数据类型的映射),还提供了面向对象的数据查询检索机制,从而极大地缩短的手动处理sql和jdbc上的开发时间。4.4.3 spring简介spring framework 是一个开源的javajava ee全功能栈(full-stack)的应用程序框架。spring framework 提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。spring包含的关键特性如下:(一)非侵入式:所谓非侵入式是指spring框架的api不会在业务逻辑上出现,也就是说我们的业务逻辑应该是纯净的,不能出现与业务逻辑无关的代码。首先针对应用而言,

36、这样我们才能将业务逻辑从当前应用中剥离出来,从而在其他的应用中实现复用;其次针对框架而言,由于业务逻辑中没有spring的api,所以业务逻辑也可以从spring框架快速的移植到其他框架。(二) 容器:spring提供容器功能,容器可以管理对象的生命周期,对象与对象之间的依赖关系。可以写一个配置文件(通常是xml文件),在上面定义对象的名字,是否是单例,以及设置与其他对象的依赖关系。那么在容器启动之后,这些对象就被实例化好了,直接去用就好了,而且依赖关系也建立好了。(三) ioc:控制反转,如果以前都是依赖于实现,那么现在反转为依赖于抽象,它的核心思想就是要面向接口编程。(四)依赖注入:建立对

37、象与对象之间依赖关系的实现,包括接口注入、构造注入、set注入,在spring中只支持后两种(五)aop:面向方面编程,我们可以把日志、安全、事务管理等服务(或功能)理解成一个“方面”,那么以前这些服务一直是直接写在业务逻辑的代码当中的,这有两点不好;首先业务逻辑不纯净,其次这些服务被很多业务逻辑反复使用,完全可以剥离出来做到复用。那么aop就是这些问题的解决方案,我们可以把这些服务剥离出来形成一个“方面”,以期做到复用;然后将“方面”动态的插入到业务逻辑中让业务逻辑能够享受到此“方面”的服务第五章 系统开发工具及容器5.1 开发工具本系统使用的开发工具,后台java代码编写使用myeclip

38、se europa workbench 6.5,前台页面编辑使用dreamwaver 8。5.1.1 myeclipse简介myeclipse企业级工作平台(myeclipse enterprise workbench ,简称myeclipse)是对eclipse ide的扩展,利用它我们可以在数据库和javaee的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的javaee集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持html, struts, jsf, css, javascript, sql, hibernate。5.1.2 dreamwaver

39、简介dreamwaver是美国macromedia公司(现为adobe收购)开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具。5.2 数据库的选择本系统采用 sql server 2008版本。5.2.1 sql server 2008 简介sql server 2008是至今为止最强大和最全面的sql server版本,它的可信任、智能性,高效性,已经得到很多用户的认可,应用也越来越广泛。sql server 2008的可信任,使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。sql server 20

40、08的智能性,使得公司可以降低开发和管理他们的数据基础设施的时间和成本。sql server 2008的高效性,提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。5.3 jdk版本的选择java development kit (jdk) 是sun公司针对java开发员的软件开发工具包。自从java推出以来,jdk已经成为使用最广泛的java sdk(software development kit)。本系统采用jdk version 1.6.0_10版本。5.4 容器本系统页面采用jsp,所以对应的容器采用apache tomcat 6.0。既然jsp/servlet,那么它

41、当然是不能直接运行的,必须把它放到某种运行环境当中,它才能发挥它的作用。这个环境就是我们讲的容器。容器也是 java 程序,它的主要功能除了为servlet 提供运行环境,还有更重要的,就是提供网络传输协议与java 程序实体的相互转换。客户端向服务器发送数据,遵循的是http 协议的数据格式,服务器向客户端发送数据也是遵循http协议的。在客户端和服务器端,可能存在着不同的编程语言编写的程序,比如java,c+等等。各种语言都有自己用于处理http协议数据的方法(类),为了使用java提供的各种http处理相关的类,必须将http协议下的数据做一定的转换,转换成一些java object,这

42、样才能使用java的方法进行数据处理。同理,当这些处理完成,又需要将这些java object转换回http协议下的数据,反馈给客户端(jsp/servlet当然存在与服务器端)。jsp/servlet容器就扮演了完成这个双向转换的角色。5.4.1 tomcat简介tomcat是由apache软件基金会下属的jakarta项目开发的一个servlet容器,按照sun microsystems提供的技术规范,实现了对servlet和javaserver page(jsp)的支持,并提供了作为web服务器的一些特有功能,如tomcat管理和控制平台、安全域管理和tomcat阀等。由于tomcat本

43、身也内含了一个http服务器,它也可以被视作一个单独的web服务器。但是,不能将 tomcat 和 apache web 服务器混淆,apache web server 是一个用 c 语言实现的 http web server;这两个 http web server 不是捆绑在一起的。apache tomcat 包含了一个配置管理工具,也可以通过编辑 xml 格式的配置文件来进行配置。第六章 网络选课系统总体设计6.1 需求分析6.1.1 系统概要设计系统概要设计:(1)功能模块设计管理员模块:可以发布公告、发布选课信息、管理和分配学生和教师账号、审核选课情况、指定系统开放时间。选课模块:可以

44、选课、退课。学生管理模块:可以查看已选课程、查看课程列表、查看个人信息等。教师管理模块:查看自己相关课程、查看个人信息。登陆模块:可以判断账号的合法性和角色/权限。(2)数据库设计学生信息表:包含学号、姓名、性别、昵称、密码等基本信息。课程信息表:包含课程号、课程名等基本信息。教师信息表:包含教师昵称、真实姓名、密码等基本信息。管理员信息表:包含管理员昵称等其他信息。权限表:包含3钟角色的权限。选课表:包含选择的课程号,课程名,任课教师等。关系表:包含课程与教师之间的多对多关系。6.1.2 系统流程本系统的流程用流程图表示如图6-1所示:图6-1 系统流程图6.1.3 用uml用例图描述用例图

45、用来描述系统与参与者之间的相互作用,也可以说它是从用户角度出发对如何使用系统的描述。角色:角色代表了某一事件发生的参与者,他用一个小人表示。在通常的网络项目中,角色常被用来代表使用网站的用户(管理员、用户等),但角色的作用并不是限于此,它也可以用来代表与系统交互的其他实体。用例:用例代表系统可以实现的功能,通常一个用例代表一组功能,它实质上规定了系统实现功能的范围。在实现项目开发过程中,一个项目中往往涉及很多个用例,此时需要将其分解成若干个子系统实现,以便于理解。在uml中,用例用一个椭圆表示。用例图:当角色与用例发生某种关系时,就可以用一个图将它们关联起来,这就是用例图,角色与用例之间使用一

46、个带箭头的实线连接,箭头方向代表使用者与被使用者关系。本系统有三种身份的用户,一是管理员,二是学生,三是教师。用例图如图3-2所示:图3-2 网络选课系统uml用例图6.2系统的分层设计本系统编码采用mvc分层结构设计。工程主要分为action包,dao包和bean包。sevlect包:主要从jsp中获取客户的请求,并且向hibernate发送请求,最终获取数据时,在把数据返回到jsp页面上。dao包:主要放置负责与数据库打交道的java类,所有类皆继承自一个hibernatedao。该层封装了数据的增、删、查、改操作。bean包:主要放置实体javabean类,用来表示实体,并且映射至数据库

47、对应的表,负责向view层提供数据。另外,所有jsp页面均放在工程webroot下。第七章 详细设计7.1 数据库7.1.1 数据库设计一个软件产品,数据库设计的好坏决定着软件的开发维护和运行容易程度。如果把企业的数据比做生命所必需的血液,那么数据库的设计就是应用中最重要的一部分。整个系统的操作实际上就是操作数据库,所以,数据库的设计方式决定着系统的好坏。本系统采用sql server 2008版本,数据库建表满足第三范式。7.1.2 数据表本系统一共建立了如表6-1的7张表。表6-1表名称说明admin管理员信息表student学生信息表teacher教师信息表course课程信息表stud

48、ent_course学生与课程关系表teacher_course课程-教师关系表score成绩表下面是对数据表字段的设计:图6-2 admin表及字段说明图 图6-3 student表及字段说明图6-4 teacher表及字段说明图6-5 course表及字段说明图6-6 score表及字段说明图6-7 teacher_course表及字段说明图6-8 studnet_course表及字段说明7.2 web层的设计这一层主要是作为用户访问系统的界面,提供web网页服务器,同时与后台的ejb服务器连接,将客户端的请求信息传递到业务层,同时将后台反馈的信息传送到客户端。本系统的表示层采用第2章中介

49、绍的体现mvc设计模式的struts2框架实现web层的设计。视图部分采用jsp页面显示,控制器部分交由struts2的action直接和实体bean交互以操作数据。7.2.1 jsp简介jsp(全称javaserver pages)是由sun microsystems公司倡导和许多公司参与共同建立的一种使软件开发者可以响应客户端请求,而动态生成html、xml或其他格式文档的web网页的技术标准。jsp技术是以java语言作为脚本语言的,jsp网页为整个服务器端的java库单元提供了一个接口来服务于http的应用程序。jsp使java代码和特定的预定义动作可以嵌入到静态页面中。jsp句法增加

50、了被称为jsp动作的xml标签,它们用来调用内建功能。另外,可以创建jsp标签库,然后像使用标准html或xml标签一样使用它们。标签库提供了一种和平台无关的扩展服务器性能的方法。jsp被jsp编译器编译成java servlets。一个jsp编译器可以把jsp编译成java代码写的servlet然后再由java编译器来编译成机器码,也可以直接编译成二进制码。7.2.2 extjs简介extjs是一个ajax框架,是一个用javascript写的,主要用于创建前端用户界面,是一个与后台技术无关的前端ajax框架。因此,可以把extjs用在.net、java、php等各种开发语言开发的应用中。7

51、.2.3 字符集编码问题由于国际上通用的字符编码为iso 8859-1,而本系统却要大量设计中文字符,如果不加以处理,中文字符就会以乱码显示。所以在写程序的时候,要统一编码。在本系统中采用的是gb2312标准。这就涉及到jsp的页面pageencoding属性设定,后台java字符串的处理,容器tomcat的配置文件server.xml uriencoding 属性设定,以及sql server 2008的字符集设定等等。7.3 ejb层的设计ejb层的功能是由各种ejb组件完成的,具体实现了业务逻辑和实体数据,也就是mvc模型的model(模型)部分。在本系统中是由数据库服务器中的数据映象一

52、实体bean完成的。7.3.1 实体bean的设计实体bean是根据数据库之中的表来建立的,其中的相关属性/成员变量对应数据库表中的各种字段。以本工程的一个实体bean student为例,各种操作需要调用到student实体bean,student实体bean的代码如下:package com.student.manage.entity;import java.util.hashset;import java.util.set;public class student private int id;private string stunumber;private string name;pr

53、ivate string department;private string sex;private string username;private string password;privaite int version;private set courses = new hashset();public string getusername() return username;public void setusername(string username) this.username = username;public string getpassword() retiurn password;public void setpassword(string password) this.pass

温馨提示

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

评论

0/150

提交评论