基于J2EE的用户培训管理系统―――前台界面设计_第1页
基于J2EE的用户培训管理系统―――前台界面设计_第2页
基于J2EE的用户培训管理系统―――前台界面设计_第3页
基于J2EE的用户培训管理系统―――前台界面设计_第4页
基于J2EE的用户培训管理系统―――前台界面设计_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

1本科毕业设计论文题目:基于J2EE的用户培训管理系统―――前台界面设计院、系:计算机科学与工程学科专业:软件工程学生:学号:指导教师:1西安工业大学毕业设计(论文)任务书院(系)计算机科学与工程专业软件工程班级姓名学号毕业设计(论文)题目:基于J2EE的用户培训管理系统――前台界面设计2.题目背景和意义:公司近几年发展迅猛,设备远销国内外。随着销售量的增长,用户培训的工作量也在急剧增大。公司先后在大连、成都、西安等地建立了培训基地。由于各个点的教学工作繁琐并且业务类同,班主任、教员常常花费大量的时间和精力来处理教务和教学事务。培训点之间的沟通主要通过传真和电话来实现,信息反馈缓慢,资源共享较难。为了提高各个培训点工作效率和教学质量,加强对各个教学点的管理,及时了解各个点的教学状况,方便用户通过访问Internet查看培训信息和解决技术问题,因此,开发支持Web应用的“用户培训管理系统”是非常必要的。3.设计(论文)的主要内容(理工科含技术指标):本系统要做的是有效解决教务和教学事务自动化管理问题。把依靠管理员的手工操作变成计算机的自动完成,将极大的提高效率和准确性。设计出具有windows风格的中文管理界面,能够实现系统的主要功能,具有良好的系统可扩展性,保留诸多辅助功能的程序模块接口。查阅资料,对系统进行调研,并对系统功能进行层次性的划分;‚确定系统的基本功能、基本的数据结构及数据的流程,保证数据流向的合理性。ƒ设计合理的数据库;④实现各模块的主要功能。4.设计的基本要求及进度安排(含起始时间、设计地点):第1-3周:了解课题背景,搜集资料,准备开题。第4-6周:进行数据库的设计及界面的设计,概要设计系统模块。第7-13周:详细设计并实现各个界面的功能,测试并完善。第14-16周:整合模块整体测试,写毕业论文,准备毕业答辩。第16-18周:写毕业论文并准备毕业答辩。5.毕业设计(论文)的工作量要求①实验(时数)*或实习(天数):600学时上机②图纸(幅面和张数)*:③其他要求:指导教师签名:年月日学生签名:年月日系(教研室)主任审批:年月日说明:1本表一式二份,一份由学生装订入附件册,一份教师自留。毕I-22带*毕I-2PAGE1基于J2EE的用户培训管理系统――前台界面设计摘要随着互联网技术的快速发展和计算机进一步普及,Web技术不断完善和标准化,网络资源的共享和网络管理显的越重要和突出。基于Internet的MIS系统的核心是B/S(Browser/Server——浏览器/服务器)架构。B/S架构比起C/S架构有着很大的优越性,B/S架构不需要专门的操作环境,在任何地方,只要能上网就行,使得B/S成为MIS的核心。我们开发的“基于Web的用户培训管理系统”,其目的是为了提高公司在全国各地培训点的工作效率和教学质量,加强深圳对各个教学点的管理,及时了解各个点的教学状况,方便用户通过访问Internet查看培训信息和解决技术问题。实现对各个教学点之间的资源共享,方便用户通过访问Internet查看培训信息和解决技术问题。系统采用B/S架构和面向对象的建模技术UML,并在用户培训管理系统中进行了应用;分析和研究了Web数据库访问技术和应用编程模型,采用SSH(Spring+Struts+Hibernate)框架整合技术去开发,采用MVC(Model-View-Controller)设计模式。本系统主要采用基于JSP的网页编程语言,MVC设计模式和SSH等技术的研究和编程实现,为Web应用基于J2EE系统的开发进行了有益的探索。关键词:B/S,SSH,MVC,软件工程BasedonJ2EEusertrainingmanagementsystemonstagecontactsurfacedesignAbstractFurtherpopularizealongwiththeInternettechnology'sfastdevelopmentandthecomputer,theWebtechnologyconsummatesandthestandardizationunceasingly,networkresourcesharingandthenetworkmanagementobviouslyismoreimportantandisprominent.BasedontheInternetMISsystem'scoreisB/S(Browser/Server--browser/server)theconstruction.TheB/SconstructioncomparestheC/Sconstructiontohavetheverybigsuperiority,theB/Sconstructiondoesnotneedthespecialoperatingenvironment,inanyplace,solongascanaccessthenettheline,enablesB/StobecomeMISthecore.Wedevelop“basedontheWebusertrainingmanagementsystemmanagementsystem”,itsgoalistoenhancethecompanytotraintheworkingefficiencyandthequalityofteachingintheland,strengthensShenzhentoeachteachingschoolmanagement,understoodpromptlyeachspottheteachingcondition,theconvenientuserthroughvisitstheInternetexaminationtraininginformationandthesolutiontechnicalquestion.Realizestobetweeneachteachingschoolresourcesharing,theconvenientuserthroughvisitstheInternetexaminationtraininginformationandthesolutiontechnicalquestion.ThesystemusestheB/SconstructionandfaceobjectmodelingtechnologyUML,andhascarriedontheapplicationintheusertrainingmanagementsystemmanagementsystem;AnalyzedandhasstudiedtheWebdatabasevisittechnologyandtheapplicationprogrammingmodel,usedSSH(Spring+Servlet+Hibernate)theframeconformitytechnologytodevelop,usesMVC(Model-View-Controller)todesignthepattern.ThissystemmainlyusesbasedontheJSPhomepageprogramminglanguage,MVCtechnicalandsoondesignpatternandSSHresearchandtheprogrammingrealizes,wastheWebapplicationhascarriedonthebeneficialexplorationbasedontheJ2EEsystem'sdevelopment.Keywords:B/S,SSH,MVC,SoftwareEngineerin目录TOC\o"1-3"\h\u中文12581摘要 12475英文摘要 2301061绪论 140931.1综述 1108021.2国内外相关研究情况 1214131.3课题背景 247431.4本文主要研究的内容 2312022核心技术介绍 458172.1B/S模式 4191182.1.1B/S(Browser/Server)结构 4178712.1.2B/S与C/S比较 5112952.1.3B/S架构软件的优势与劣势 5235602.2MVC模式 5299062.2.1视图(View) 556612.2.2模型(Model) 533842.2.3控制器(Controller) 6184712.2.4MVC的优缺点 6253522.3JSP(JavaServerPage) 7271452.3.1JSP执行过程 7240762.3.2JSP技术的优点 7304962.3.3JSP设计模式 8235492.4Web技术 8119802.4.1Web 9156432.4.2J2EE 974602.4.3.NET 9160252.4.4Web的特点 10118382.5SSH(Struts+Spring+Hibernate) 10228342.5.1Struts 10186562.5.2Spring 11198772.5.3Hibernate 1250142.5.4SSH框架搭建 1256202.6开发工具介绍 13244392.6.1JDK1.6.0 13270192.6.2MyEclipse6.0.1 13200062.6.3Tomcat6.0.18 13132512.6.4MySQL5.1.33 14135222.6.5RationalRoseEnterpriseEdition 1459813可行性研究 1531413.1可行性研究的目的 15120043.2经济可行性分析 15323123.2.1开发成本估算 15310013.3技术可行性 16252283.3.1系统的简要描述 1666213.3.2处理流程和数据流程 16212783.3社会可行性 1769564需求分析 18295094.1用户需求 18304984.1.1管理员的需求 19123524.1.2教员的需求 19151564.1.3学员的需求 19107844.1.4权限设置 19220014.2分析系统的数据要求 19125284.2.1数据正确性 20276584.2.2数据的处理及时 20246164.2.3数据的完整性 20139474.3数据库的概念模型 20293584.4系统运行要求 21151044.4.1PC机的设计系统配置 21317344.4.2系统的运行要求 22310444.5系统运行环境搭建 22222664.5.1jdk的环境变量配置 22149514.5.2Tomcat的环境变量配置 22251244.5.3MySQL安装及创建数据库 22240124.5.4部署系统 2359904.6修正系统开发计划 2354615概要设计 24189495.1功能模块设计 24216155.1.1功能模块划分 24245595.1.3信息统计模块的分析设计 2542615.1.4系统模块功能描述 26190915.2数据库设计 28101225.2.1数据库表ER图 28254855.2.2数据库的设计 3074865.2.3数据库数据结构设计 32132256详细设计 34163516.1系统业务流程分析与具体实现 3479456.2USECASE图 36244736.3系统框架设计实现 3719076.3.1数据持久层 3721076.3.2业务逻辑层 37158876.3.3表示层 39206056.4常用技巧和方法 39102746.4.1如何防止IE缓存JSP文件 40133986.4.2解决MySQL数据不支持批量添加数据的问题 40221487系统的测试与分析 41233097.1系统测试测试说明 4135567.1.1界面窗口的测试 41284107.1.2数据测试 41281857.2模块测试 4171737.2.1信息查询模块的测试 4264197.2.2信息统计模块功能的测试 42131597.3测试分析报告 42322898结束语 4397939参考文献 442167610致谢 452200711毕业设计(论文)知识产权声明 462704012毕业设计(论文)独创性声明 472879913附录 48绪论1绪论1.1综述在二十一世纪随着社会科学技术的发展和网络技术的不断更新,信息在各个领域中发挥着重要的作用。对于企业的发展,公司规模的不断扩大和完善,在管理上和信息交流上还是远远的落后,并不能及时的把企业所需要的信息及时反馈给企业,他不仅需要和用户进行交流还需要企业各地之间的信息集合处理,便于公司管理和及时的给予公司决定。Web技术的出现和Internet使得这成为了现实,使用者只需打开浏览器登录即可了解和反馈信息,便于企业及时的管理和了解企业信息。公司近几年发展迅猛,设备远销国内外。随着产品销售量增长,用户培训的工作量也在急剧增大。公司先后在北京、上海、重庆、海南等地建立了培训基地。由于各个培训点之间的教学工作繁琐并且业务雷同,常常要花费大量的时间和精力来处理教务和教学事务。培训点与公司的沟通主要通过传真和电话来实现,信息反馈缓慢,资源共享较难。为了提高各个培训点的工作质量,加强对各个教学点的管理,及时了解各个点的教学状况,方便用户通过访问Internet查看培训信息,因此,开发支持Web应用的“基于J2EE的用户培训管理系统”是非常必要的。我们开发的“基于J2EE的用户培训管理系统”目的便是:加强企业对全国各地培训点的工作效率和教学质量的管理,方便企业及时了解各个点的教学状况,满足企业对其的管理,方便企业内部通过访问WWW查看培训信息。1.2国内外相关研究情况近年来伴随着信息技术的发展,有关用户培训管理的机构很多。国外培训热潮至今方兴未艾。国外的各类培训、行业培训均有专门机构常年主办,如英国剑桥大学考试委员会涉及举办的剑桥信息技术,几种体现了目前国外在应用能够培训方面的先进思想和成功经验。并已形成职业技术教育的培训体系,走上了产业化的道路。在国内,网络学校及其培训机构也在近几年比较盛行。但真正由企业自身组织的用户培训,据调查的资料可知,只有一些大型的企业才会组织自己的培训机构,作为公司的一部分承担着企业的产品销售的售后服务和管理工作。如华为3G培训,主要为其公司的3G技术服务,主要有信息与通信系统的设计、西安工业大学毕业设计(论文)设备安装、调试、维护、优化以及相关的技术和管理培训、信息系统的软件开发集成等服务。在国内企业中,一些主管领导们已经认识到用户培训的重要性,也有一些企业已经采取了一些有益的措施,但毕竟是少数。还有许多的公司追随其后,也建立起自己的内部网,对用户培训管理采用了一些简单的应用程序,但离使用计算机系统和专门来管理和维护还有一段距离。综上所述,无论在国内外,目前还是有一些比较完善的、专门的、适用于各种企业自己使用的企业用户培训管理系统。因此,研究开发出一套比较通用、功能比较完善的企业用户培训管理软件,在实践中证明是有必要的。1.3课题背景在信息化的社会中和信息化的企业管理中。该公司虽然建立了自己的培训基地。但是各个教学点和公司之间沟通和交流还是依赖传真和电话来实现,信息反馈缓慢,资源共享较难。为了提高各个培训点工作效率和教学质量,加强公司对各个教学点的管理,及时了解各个点的教学状况,方便用户管理和信息共享,开发支持Web应用的“基于J2EE的用户培训管理系统”是非常必要的。本系统实现了用户培训信息在Internet上的管理和共享,由于客户端仅需安装浏览器,使用简单,界面统一,便于分布在不同地方的各类用户进行大量的信息的及时共享和交流,方便公司的管理。1.4本文主要研究的内容本课题采用面向对象建模语言UML为系统建模,选用B/S结构模式,用SSH(Struts+Spring+Hibernate)技术,MVC设计模式实现“基于J2EE的用户培训管理系统”。论文的主要研究工作主要包括以下三个方面的内容:1)对Web应用的“基于J2EE的用户培训管理系统”构建中用到的各种技术与应用进行研究、分析和说明。2)面向对象建模语言UML为系统建模设计Usecase图描述用户角色与业务功能之间的关系,画出Usecase图的Sequence图和Collaboration图,详细描述业务内容。设计Class图,说明类的数据成员、成员函数,类关系。设计数据库E_R图,数据库逻辑和物理结构。设计Component图,分析JavaBean组件,设计Deployment图,确定详细软件体系结构,系统具体部署方式。选用B/S结构模式,用SSH技术,MVC设计实现支持Web应用的“用户培训管理系统”,实现用户培训的业务:办班计划、排课表、学员报到、教室安排、实验室分配、教员和学员管理、学员评价、学员成绩统计、信息查询、课表查询、办班情况统计、班级查询等25个功能。核心技术介绍2核心技术介绍主要介绍和描述B/S模式、C/S模式、MVC设计模式、SSH整合技术、JSP技术,在Web应用的“基于J2EE的用户培训管理系统”中应用到的主要的几种技术,做一个简单的说明和介绍。2.1B/S模式管理软件技术的主流技术与管理思想一样,也经历了三个发展时期。首先,界面技术从上世纪DOS字符界面到Windows图形界面(或图形用户界面GUI),直至Browser浏览器界面三个不同的发展时期。其次,今天所有电脑的浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其风格都是一样的,使用人对操作培训的要求不高,而且软件可操作性强,易于识别;再者,平台体系结构也从过去单用户发展到今天的文件/服务器(F/S)体系、客户机/服务器(C/S)体系和浏览器/服务器(B/S)体系。2.1.1B/S(Browser/Server)结构B/S(Browser/Server)结构(见图2.1)即浏览器/服务器结构。用浏览器来操作简单易用,但是对输入没有很好的验证。逻辑实现不多,本地只是用于获取数据然后大部分验证需要提交服务器来完成。图2.1B/S(Browser/Server)结构B/S结构的工作原理是:Web服务器接收浏览器的Web请求,并处理Web页请求,同时将数据请求通过数据库接口转换成数据库服务器能接受的形式(如SQL),之后送到数据库服务器,数据库服务器根据数据请求执行相应的数据库操作(如查询、修改、统计等),并将结果通过数据库接口的转换送回Web服务器,Web服务器将结果处理成Web浏览器能够接受的形式(HTML),送回发出请求的Web浏览器,由浏览器将其显示在客户端。西安工业大学毕业设计(论文)2.1.2B/S与C/S比较C/S和B/S是当今世界开发模式技术架构的两大主流技术。C/S是美国Borland公司最早研发,B/S是美国微软公司研发。目前,这两项技术以被世界各国所掌握,国内公司以C/S和B/S技术开发出产品也很多。2.1.3B/S架构软件的优势与劣势A)维护和升级方式简单B)成本低,选择更多C)应用服务器运行数据负荷较重由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。2.2MVC模式MVC架构模式是模型(Model)、视图(View)和控制器(Controller)三个英文单词的首字母组合,这种架构综合应用了多种设计模式,包括观察者(Observer)、策略(Strategy)和合成(Composite)等模式。2.2.1视图(View)视图(View)部分代表了用户交互界面,对于JavaWeb应用来说,这部分由JSP和定制标记库组成。视图代表了应用的显示模块,JSP通过定制标记库来读取模型对象中的数据,模型和控制器部分负责在JSP页面中所显示的数据的更新。在实际开发中,我们可以先设计出静态的HTML文件,把这些HTML文件作为进一步动态化的模板文件,然后根据需求,在模板文件的基础上把动态显示的内容使用Java代码、JavaBean和定制标记库进行内容替换。2.2.2模型(Model)模型(Model)部分代表了运算数据和商业逻辑,例如:电子商务系统中的用户帐号信息、产品目录信息和虚拟的购物车内容等。在实际开发中,模型部分一般通过JavaBean和EJB等来实现。2.2.3控制器(Controller)控制器(Controller)调用模型和视图部分,相当于MVC模式中的中枢神经,接收到用户不同的请求,根据请求的内容调用不同的模型进行处理,处理完成以后再通过视图部分显示最终的处理结果。控制器一般会使用Servlet技术来实现。视图、控制器和模型之间的相互关系如图2.2和MVC的实现过程如图2.3所示。图2.2Model-View-Controller模型MVC的实现过程首先分析问题,对系统进行模块的划分,设计每个模块并用Rose设计视图,实现每个模块的功能,安装相应的插件。图2.3MVC的实现过程2.2.4MVC的优缺点优点:各司其职,互不干涉。在MVC模式中,三个部分中各司其职,如果那一部分的需求发生了变化,就只需要更改相应部分的代码就可以,而不会影响到其他层中的代码。有利于开发中的分工。在MVC模式中,用不同模块把系统分成不同部分,能更好地实现开发中的分工。例如:美工和网页设计人员进行视图部分的开发,Java程序员进行模型和控制器部分的开发。有利于组件的重用。分层后更有利于组件的重用。例如:控制器部分可独立成一个能用的组件,视图可做成通用的界面。缺点:使用MVC以后,系统变的复杂了,对开发人员的技术要求较高,同时模型和视图的分离使得调试代码变的更困难了。2.3JSP(JavaServerPage)JSP(JavaServerPage)是由Sun公司倡导、许多公司参与一起建立的一种新动态网页技术标准,类似于ASP、PHP等的网页设计语言。2.3.1JSP执行过程JSP页面就是在传统的页面HTML文件(*.htm、*.html)中加入Java程序片段(Scriptlet)和JSP标签构成。Servlet/JSPContainer收到客户端发出的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式响应给客户端。其中的程序片段可以是:操作数据库、重新定向网页以及发送E-Mail等等,这些都是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP称为Server-SideLanguage。如下图2.4所示图2.4JSP的执行过程2.3.2JSP技术的优点JavaServerPage技术是一个纯Java平台的技术,它主要用来产生动态网页内容,包括:HTML、DHTML、XHTML和XML。JavaServerPage技术能够让网页人员轻易建立起功能强大、有弹性的动态内容。WriteOnce,RunAnywhere特性搭配可重复使用的组件采用标签化页面开发N-tier企业应用架构的支持2.3.3JSP设计模式JSP网站开发技术标准给出了两种使用JSP的方式:模式一和模式二。模式一:JSP+JavaBean技术在JSP+JavaBean模式中,JSP页面响应请求并将处理结果返回给客户,所有的数据库操作和复杂业务逻辑操作都能通过JavaBean来实现。该技术实现了页面的表现和页面的商业逻辑相分离。模式一(JSP+JavaBean)体系结构如图2.5所示。图2.5JSP+JavaBean模式模式二:MVC模式MVC模式,即“Model-View-Controller”模式。该模式充当了控制器(Controller即“C”)的角色,Servlet负责响应客户对业务逻辑的请求,并根据用户的请求行为决定将调用的JSP页面。JSP页面处于表示层,也就是视图(View即“V”)的角色。JavaBean负责数据的处理,也就是模型(Model即“M”)的角色。模式二(Model-View-Controller)体系结构如图2.6所示。图2.6Model-View-Controller模式2.4Web技术对于开发Web应用的“基于J2EE的用户培训管理系统”,我们有必要对Web技术和JSP技术做相应的了解,下面我就Web技术和JSP技术做一个简单的介绍,为什么要开发Web应用的“基于J2EE的用户培训管理系统”。2.4.1WebWeb架构的精华有三处:用超文本技术(HTML)实现信息与信息的连接;用统一资源定位技术(URI)实现全球信息的精确定位;用新的应用层协议(HTTP)实现分布式的信息共享。这三个特点无一不与信息的分发、获取和利用有关。Web服务端开发技术的完善使开发复杂的Web应用成为了可能。为了适应企业级应用开发的各种复杂需求,为了给最终用户提供更可靠、更完善的信息服务,两个最重要的企业级开发平台J2EE和.NET分别诞生于Java和Windows阵营,使得Web开发技术以前所未有的发展和完善。2.4.2J2EEJ2EE是纯粹基于Java的解决方案。1998年,Sun发布了EJB1.0标准。EJB为企业级应用中必不可少的数据封装、事务处理、交易控制等功能提供了良好的技术基础。至此,J2EE平台的三大核心技术Servlet、JSP和EJB都已先后问世。1999年,Sun正式发布了J2EE的第一个版本。紧接着,遵循J2EE标准,为企业级应用提供支撑平台的各类应用服务软件争先恐后地涌现了出来。IBM的WebSphere、BEA的WebLogic都是这一领域里最为成功的商业软件平台。随着开源运动的兴起,JBoss等开源世界里的应用服务新秀也吸引了许多用户的注意力。到2003年时,Sun的J2EE版本已经升级到了1.4版,其中三个关键组件的版本也演进到了Servlet2.4、JSP2.0和EJB2.1。至此,J2EE体系及相关的软件产品已经成为了Web服务端开发的一个强有力的支撑环境。2.4.3.NET和J2EE不同的是,Microsoft的.NET平台是一个强调多语言间交互的通用运行环境。尽管.NET的设计者试图以.NET平台作为绝大多数Windows应用的首选运行环境,但.NET首先吸引的却是Web开发者的目光。2001年,ECMA通过了Microsoft提交的C#语言和CLI标准,这两个技术标准构成了.NET平台的基石,它们也于2003年成为了ISO的国际标准。2002年,Microsoft正式发布.NETFramework和VisualStudio.NET开发环境。早在.NET发布之前,就已经有许多Windows平台的Web开发者迫不及待地利用Beta版本开发Web应用了。这大概是因为,.NET平台及相关的开发环境不但为Web服务端应用提供了一个支持多种语言的、通用的运行平台,而且还引入了ASP.NET这样一种全新的Web开发技术。ASP.NET超越了ASP的局限,可以使用VB.NET、C#等编译型语言,支持WebForm、.NETServerControl、ADO.NET等高级特性。客观地讲,.NET平台,尤其是.NET平台中的ASP.NET的确不失为Web开发技术在Windows平台上的一个集大成者。2.4.4Web的特点Web是图形化的和易于导航的(Navigate)。Web可以同时提供将图形、音频、视频信息集合于一体在已在页面上显示色彩丰富的图形和文本的性能的特性。Web也是非常易于导航的,只需要从一个连接跳到另一个连接,就可以在各页各站点之间进行浏览了。Web与平台无关。无论你的系统平台是什么,你都可以通过浏览器(Browser)链接Internet访问WWW。Web是分布式的。对于Web没有必要把图形、音频和视频等信息都放在一起,信息可以放在不同的站点上。只需要在浏览器中指明这个站点就可以了。Web是动态的。由于各Web站点的信息包含站点本身的信息,信息的提供者需要经常对网站上的信息进行更新,所以Web站点上的信息是动态的。Web是交互的。Web的交互性主要表现在它的超连接上,用户的浏览顺序和所到站点完全由他自己决定。用户可以从服务器上获取动态的数据。通过以上的技术了解,我们对Web应用开发“基于J2EE的用户培训管理系统”有了更详细的认识。2.5SSH(Struts+Spring+Hibernate)在Web应用“基于J2EE的用户培训管理系统”中,我们还用到了J2EE中三种比较开源的框架整合技术,那就是SSH(Struts+Spring+Hibernate)。框架是整个系统或系统的一部分的可重用设计,由一组抽象的类及其实例间的相互作用方式组成。框架一般具有即插即用的可重用性、成熟的稳定性以及良好的团队协作性。下面就对SSH做一个简单的介绍。2.5.1StrutsStruts是一个在JSPModel2基础上实现的MVC框架,主要分为模型(Model)、视图(Viewer)和控制器(Controller)三部分,其主要的设计理念是通过控制器将表现逻辑和业务逻辑解耦,以提高系统的可维护性、可扩展性和可重用性。Struts框架的体系结构如图2.7所示。图2.7Struts框架的体系结构图分析Struts框架中的MVC组件。

(1)视图:视图部分主要由JSP页面组成,其中没有流程逻辑、业务逻辑和模型信息,只有标记。Struts自身包含了一组标记库(TagLib),这也是Struts的精华之一,灵活运用它们可以简化JSP页面的代码,提高开发效率。

(2)控制器:Struts中的Controller主要是其自身提供的ActionServlet。ActionServlet接收所有来自客户端的请求并根据配置文件(struts-config.xml)中的定义将控制转移到适当的Action对象。

(3)模型:Struts没有定义具体Model层的实现,Model层通常是和业务逻辑紧密相关的,有持续化的要求。目前在商业领域和开源世界,都有一些优秀的工具可以为Model层的开发提供便利。2.5.2SpringSpring是一个解决了许多J2EE开发中常见问题并能够替代EJB技术的强大的轻量级框架。Spring的轻盈体现在其框架本身的基础结构以及对其他应用工具的支持和装配能力。Spring框架的核心是控制翻转IoC(InversionofControl)/依赖注入DI(DependenceInjection)机制。IoC是指由容器中控制组件之间的关系而非传统实现中由程序代码直接操控,这种将控制权由程序代码到外部容器的转移,称为“翻转”。DI是IoC即由容器在运行期间动态地将依赖关系注入到组件之中。Spring采用设值注入和构造子注入的机制,通过配置文件管理组建的协作对象,创建可以构造组件的IoC容器。Spring框架的结构如图2.8所示。图2.8Spring框架的结构图2.5.3HibernateHibernate是目前最为流行的O/Rmapping框架(O/Rmapping技术是为了解决关系型数据库和面向对象的程序设计之间不匹配的矛盾而产生的),它在关系型数据库和Java对象之间做了一个自动映射,使得程序员可以以非常简单的方式实现对数据库的操作。Hibernate工作原理如图2.9所示。图2.9Hibernate工作原理Hibernate通过对JDBC的封装,向程序员屏蔽了底层的数据库操作,使程序员专注于OO程序的开发,有助于提高开发效率。程序员访问数据库所需要做的就是为持久化对象编制xml映射文件。底层数据库的改变只需要简单地更改初始化配置文件(hibernate.cfg.xml或者perties)即可,不会对应用程序产生影响。2.5.4SSH框架搭建集成SSH框架的系统框架图如图2.10所示。系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用Spring支持。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑。图2.10集成SSH框架的系统框架图系统的基本业务流程是:在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。2.6开发工具介绍在Web应用开发“基于J2EE的用户培训管理系统”中,我们使用的开发工具主要有MyEclipse6.0.1GA、Tomcat6.0.18、MySQL5.1.33、JDK1.6.0和RationalRoseEnterpriseEditionforWindows。下面就简单的介绍一下这几个工具:2.6.1JDK1.6.0JDK全称是Java(TM)SEDevelopmentKit即Java标准版(StandardEdition)开发工具包。这是Java开发和运行的基本平台,运行Java程序和编译Java代码为类文件。在JDK1.6中包含了Java运行时环境JRE和对开发applets和应用程序很有用的命令行工具。2.6.2MyEclipse6.0.1MyEclipse6是一款商业的基于Eclipse的JavaEE集成开发工具。MyEclipse的安装分为ALLINONE和插件版本,ALLINONE版本无需另外下载安装JDK,Eclipse3.3。我们使用的是插件版本。2.6.3Tomcat6.0.18Tomcat是一款开源免费的Web服务器,Tomcat是一个小型的轻量级应用服务器。实际上Tomcat部分是Apache服务器的扩展,它是独立运行的。Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。2.6.4MySQL5.1.33MySQL是一款用得比较广泛的轻量级的免费数据库服务器,一个小型的关系型数据库管理系统。开发者为瑞典MySQLAB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于它体积小、速度快、总体运行成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体运行成本而选择了MySQL作为网站数据库。2.6.5RationalRoseEnterpriseEditionRationalRose是一个完全的,具有能满足所有建模环境(Web开发,数据建模,VisualStudio和C++)需求能力和灵活性的一套解决方案。Rose是面向对象建模工具,利用这个工具,可以建立用UML描述的软件系统的模型,而且可以自动生成和维护C++、Java、VB和Oracle等语言和系统的代码。RationalRose包括了统一建模语言(UML),OOSE,以及OMT。可行性研究3可行性研究3.1可行性研究的目的可行性研究的目的就是为了对问题研究,以最小的代价在最短的时间内确定问题是可解。也就是说可行性研究的目的不是解决问题,而是确定问题是否值得去解决,是否值得开发,是否具备开发这个系统的条件。可行性研究是压缩了和简化了的系统分析和设计的过程,高层次上以抽象的方式进行设计的过程。在系统的开发决策之前对有关的开发方案、开发技术方案、系统运行等的方面进行论证。可行性研究必须从系统总体的角度出发,对技术、经济、人力和物力等相关的因素进行分析和论证。一般来讲,从经济可行性、技术可行性、运行可行性、法律可行性和开发方案等方面研究其可行性。也就是说,研究在当前的具体条件下,开发新系统是否具备必要的资源和其它条件。为了达到这个目的,必须认真了解用户的要求及现实环境,探索若干种可供选择的主要解决方法,并对每种解法的可行性进行仔细的论证。一般来说应从以下几个方面进行论证:1.经济上的可行性。主要是预估费用支出和对项目的经济效益进行评价。2.技术上的可行性。这方面分析当间的软,硬件技术能否满足对系统提出的要求如增加存储能力,实现通讯功能,提高处理速度。3.社会可行性:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。3.2经济可行性分析经济可行性研究主要进行成本效益分析,包括估计项目的开发成本的估算和取得效益估算,确定要开的项目是否值得投资开发。3.2.1开发成本估算对于本系统即Web应用“基于J2EE的用户培训管理系统”的开发是企业或者公司内部使用的系统。在成本方面,在这我们主要以软件、人员工资、设备和环境来考虑。从前面介绍使用的主要技术和软件上来讲:MyEclipse6.0.1目前还是商业化需求分析的软件,Tomcat是一款开源免费的Web服务器,MySQL是一款用得比较广泛的轻量级的免费数据库服务器,JDK全称是Java(TM)SEDevelopmentKit即Java标准版(StandardEdition)开发工具包可以在SUN公司的网站上下载。所以在软件上只有一个就是MyEclipse需要支付一定的费用,其他软件几乎没有费用,所以从开发的软件层次上是可以通过的。从开发的人员上来讲,需要2-3个人合作完成,时间大概在2个月到3个月之间左右。从公司的需求和长时间培训来讲,对于这个技术人员上应该没有说明问题。使用上是通过B/S模式实现,对于用户和公司来讲,只要有PC机和安装浏览器即可使用。直接产生的经济效益很少,但是从节约的时间和人力、和费用,以及执行的效率和效果上来讲,是很有必要的。3.3技术可行性技术可行性主要是对对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源和技术条件下,技术风险有多大,项目是否能实现。3.3.1系统的简要描述Web应用开发“基于J2EE的用户培训管理系统”,主要的目的的实现公司各个地点之间的资源统一管理和信息的共享和用户之间的及时信息交流。当公司需要向培训点传递信息或培训点需要上公司提交信息或咨询时,不必再以电话或传真或邮递的方式来进行,以及各地之间和各地与公司之间需要进行交流的时候只要通过本系统就可以实现。本系统主要实现一下功能,针对管理员、教员和学员:管理员可以设置培训类型、发布课程样表,对教员、教室、实验室、评价要素进行管理,可以进行办班计划,进行班级管理、排课管理,同时也可以对班级查询、课表查询、日程表查询、总体评价查询和通讯录查询,对课时、办班情况、教员评价、学生成绩进行统计等功能;教员可以进行报道管理、基本情况调查、考勤管理和成绩管理,也可以进行通讯录查询、课表查询和日程表查询等功能;学员可以进行班级查询、课表查询、日程表查询、成绩查询和通讯录查询,以及基本情况调查和教员评价等的功能。3.3.2处理流程和数据流程从前面的技术我们了解到所采用的MVC设计模式即JSP+Servlet+JavaBean。首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。然后通过管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。最后则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。从上面的技术介绍和分析上我们采用B/S模式、MVC设计模式和SSH框架整合技术。这些技术都是目前比较完善和成熟的技术,对于开发本系统的技术上可以满足。采用B/S模式是因为它具有维护和升级方式简单、成本低、选择更多,管理人员只需要管理服务器就行了,用户只需要通过WWW浏览器界面操作。所以在技术可行性上可以通过。3.3社会可行性社会可行性主要是考察要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。对于本系统只是公司内部培训使用的一个系统。在软件方面需要购买MyEclipse6,软件都使用正版软件。在用户方面该系统使用方面简单,易于操作,对于培训人员不是问题。所以在社会可行性上通过。4需求分析所谓“需求分析”,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。可以说,“需求分析”就是确定要计算机“做什么”。在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定用户的需求。只有在确定后他们的详细需求后才开始分析和寻求新系统的解决方法。根据系统的设计和用户的(管理员、教员、学员)需求,由可行性分析与研究,系统采用B/S结构、MVC设计模式和SSH框架整合技术。对MVC模式(JSP+JavaBean+Servlet)中的技术的分析和研究。对应的根据用户(管理员、教员、学员)功能需求和应用技术设计划分系统。我们将系统划分成资源管理、业务管理信息查询和信息统计4个模块。如图4.1所示。图4.1系统功能模块图4.1用户需求Web应用基于J2EE的用户培训管理系统的总目标是:使各地的管理员、教员和学员能够通过B/S模式的设计实现各培训地点之间、培训地点和总部之间的资源共享、信息交流,实现及时的信息发布和查看,便于公司对分散在各地的培训点进行管理,及时了解相关信息。在此过程中管理员、教员和用户的需求是不同的。西安工业大学毕业设计(论文)4.1.1管理员的需求资源管理模块:管理员需要对教员、教室、实验室、培训类型、课程样表和评价要素进行管理。业务管理模块:在这个模块需要实现对办班计划、班级、排课和报道管理这几项的功能。信息查询模块:需要实现对通讯录、班级、课表、日程表、成绩表和总体评价表查询的功能。信息统计模块:对课时、办班情况和学生成绩的统计。4.1.2教员的需求业务管理模块:教员在这个模块需要对学员考勤和成绩进行管理。信息查询模块:需要实现对通讯录、班级、课表、日程表、成绩表和总体评价表查询的功能。4.1.3学员的需求业务管理模块:学员在这个模块需要对教员进行教员评价和基本情况调查。信息查询模块:需要实现对通讯录、班级、课表、日程表、成绩表和总体评价表查询的功能。4.1.4权限设置对于这个系统,有些功能是管理员的需求,有一些是教员的功能需求,以及学员的功能需求,他们的功能需求不同设计相应的模块。但是对于管理员的模块不需要教员和学员查看,教员的信息不需要学员的参与。所以需要对不同的用户实行不同程度的模块屏蔽,也就是说没有这个模块的功能。4.2分析系统的数据要求任何一个软件本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息很大程度上决定了系统的面貌,对软件设计有深远的影响,因此,必须分析系统的数据要求,这是软件分析的一个重要任务。分析系统的数据要求通常采用建立数据模型的方法。4.2.1数据正确性数据的正确性是系统的安全、稳定、健壮的前提。虽然在用户输入数据和系统保存数据时都有一定的规则,同时在输入信息时,系统本身也都在做的数据的验证,但是不排除BUG的存在。所以要求用户尽量能够输入正确的信息和合理的数据,保证数据库的完整性和系统的健壮性。4.2.2数据的处理及时对于本系统而言,开发的前提就是能够达到信息的共享和用户之间的即时交流。所以对于系统的数据处理而言,需要及时的去更新数据库的信息,用户在需要不断的查询信息、修改信息、增加信息和删除记录等的操作,这些信息需要数据库能够保存信息,供下面参考。4.2.3数据的完整性数据的完整性是为了防止数据库中存在不符合语义的数据,防止数据库中存在不正确的数据。例如参照完整性:CreatetableSC(Snochar(9)notnull,Cnochar(9)notnull,GradeSMALLINT,PRIMARYKEY(Sno,Cno),FORMINGKEY(Sno)REFERENCESStudent(Sno),FORMINGKEY(Cno)REFERENCESCourse(Cno),)4.3数据库的概念模型概念模型是对显示世界中存在的信息进行第一层的抽象,数据库的概念模型主要是通过ER图,概念模型是数据库设计人员和用户之间进行的交流语言,能够方便、直接的表达应用中的各种语义知识,简单、清晰、易于用户理解。系统中的各类实体,他们之间存在着一对一的联系、一对多的联系和多对多的联系,如何能够清晰、简单、明了的把系统中的实体之间的联系展现给用户,ER(Entity-Relationship)就是把实体之间的联系在一起,画成图展现给数据库设计人员和用户,供数据库的设计和开发人员与用户之间的交流,能够对系统的需求做一个补充。现在就把Web应用基于J2EE的用户培训管理系统中涉及到的主要实体之间的关系,通过概念模型ER图展示给数据库设计人员和系统的用户,概念模型ER图如图4.2所示:图4.2系统的概念模型ER图4.4系统运行要求4.4.1PC机的设计系统配置系统软件:MicrosoftWindowsxpProfessionalWeb服务器软件:Tomcat5.0版本以上编译环境:JDK1.6以上数据库管理系统:MySQL5.0硬件要求:PentiumⅢ450以上,258MRAM,15GHD4.4.2系统的运行要求浏览器:IE6.0以上(内核)MozillaFirefox3.04.5系统运行环境搭建在Web应用开发“基于J2EE的用户培训管理系统”中,我们使用的开发工具主要有MyEclipse6.0.1GA、Tomcat6.0.18、MySQL5.1.33、JDK1.6.0。4.5.1jdk的环境变量配置在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:JAVA_HOME=c:\jdk1.5,classpath=.;%JAVA_HOME%\lib\;path=%JAVA_HOME%\bin接着可以测试JDK是否已安装成功:在开始->运行->输入cmd->确定。输Javac和Java如果显示如果显示javac和java的用法,则成功。4.5.2Tomcat的环境变量配置我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:CATALINA_HOME:c:\tomcat,CATALINA_BASE:c:\tomcat,TOMCAT_HOME:C:\Tomcat。然后修改环境变量中的classpath,把tomcat安装目录下的common\lib追加到classpath中去,修改后的classpath如下:classpath=.;%JAVA_HOME%\lib\;%JAVA_HOME%\lib\;%CATALINA_HOME%\common\lib;接着进入Tomcat的安装目录下的bin目录下双击startup.bat文件启动Tomcat,在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。4.5.3MySQL安装及创建数据库MySLQ安装过程中,有个选择编码的选项,选择UTF,中途还要输入密码。安装好后,在开始->运行->输入cmd->确定。打开命令提示符窗口.输入mysql进入数据库,创建数据库输入createdatabaseusertraincharactersetUTF;回车在输入useusertrain;回车,将附录中的建表语句复制过了,执行。然后去用户培训管理系统useTrain.war中修改userTrain\WebRoot\WEB-INF\spring_config底下的applicationContext.xml文件中的第24行的value值,改为你创建数据库时的密码。4.5.4部署系统首先将用户培训管理系统useTrain.war放在Tomcat安装目录下面的webapps目录下,启动Tomcat(如果你的Tomcat已经启动过了,要在Tomcat的安装目录下的bin目录下双击shutdown.bat文件停止Tomcat,然后重新启动)。在IE中访问:8080/userTrain/。就可以进入系统的登陆页面了。4.6修正系统开发计划对于软件的需求,任何软件开发者和软件的使用都不会把需求做的非常完美,只是尽可能的去完善,避免出现低级的错误。所以对于系统的开发可以使开发者或者使用在某些功能或设计上作出小范围相应的功能或设计的修改。允许系统小范围和几次的变动,但是不容许大范围或多次的进行变动。所以作为系统的需求分析应该预留一部分的空间让系统进行变更。概要设计5概要设计在需求分析阶段(开题报告)中对系统的需求做了详细的阐述,在此基础上对Web应用基于J2EE的用户管理系统的概要设计。主要解决了实现该系统在需求的程序设计模块。包括如何把该系统划分成若干个模块,决定各个模块之间的接口、模块之间的信息传递,以及数据结构、模块结构的设计。5.1功能模块设计由需求分析知道,我们把系统划分成四大主要的模块:资源管理、业务管理、信息查询和信息统计模块。现在我们需要对这四个模块进行进一步的划分与设计,具有那些功能,改如何实现?5.1.1功能模块划分根据该系统设计所要达到的功能要求和用户的要求,在对系统的充分分析和仔细的讨论后,对系统进行系统模块划分,对其中的内容进行进一步的设计,最终设计如下图5.1。图5.1系统功能模块图在Web应用“基于J2EE的用户培训管理系统”的开发中我主要负责前台界面设计,在四个大模块中,我主要负责信息查询和信息统计两个模块。现在我就以这两个模块为主介绍这个系统。5.1.2信息查询模块的分析设计(通讯录查询)信息查询主要包括:班级查询、课表查询、日程表查询、成绩表查询、总体详细设计评价表查询和通讯录总共六个小模块。其中的通讯录查询是很重要的一部分,对于管理员、教员和学员,都给以对这个模块进行操作。对于学员的通讯录查询以StuId为主键进行Student表的数据查询。对于教员的通讯查询则以教员的姓名Name为主键进行查询Teacher表的数据查询。以学员的通讯录查询的时序图5.2。图5.2学员通讯录查询时序图5.1.3信息统计模块的分析设计信息统计模块中主要包括:课时统计、办班情况统计、教员评价统计和学生成绩统计。其中课时统计是以班级为主的查询。其中课时统计是信息统计模块中很重要的一部分,对于管理员他需要对每个班级每门课的课时进行统计,查看排课是否冲突,安排是否合理等等的信息核对。这个不需要去查询统计,这个直接从Course表中进行统计显示到前台页面。时序图见图5.3。图5.3课时统计时序图5.1.4系统模块功能描述对于系统的功能模块是和搭档经过讨论后最终确定的每个大模块包含的小模块和每个小模块应该具有的功能。现在叙述如下:a.信息查询通讯录,包括学员和教员通讯录查询。班级信息查询,根据班级编号进行班级信息查询。课表查询,根据班级编号和上课时间查询。日程表查询,根据班级编号和上课时间查询该班级一天的日程。成绩表查询,根据学员学号查询学员的成绩。总体评价表查询,根据班级编号查询学员对该班级的评价。图5.4信息查询模b.业务管理办班计划,管理员进行对办班计划的增删查改操作。班级管理,管理员对班级的增删查改已经对班级学员的删改操作。排课管理,管理员对课表的增删查改操作。报道管理,教员进行学员报道和学员信息查询的操作。考勤管理,教员对学员的考勤操作。成绩管理,教员对学员的成绩管理。教员评价,学员对教员进行评价的操作。基本情况调查,学员对班级的评价操作。图5.5业务管理模块c.资源管理教室管理,管理员对教室的增删查改操作。实验室管理,管理员对实验室的增删查改操作。教员管理,管理员对教员的增删查改操作。培训类型管理,管理员对培训类型的增删查改操作。课程样表管理,管理员对课程样表的增删查改操作。价要素管理,管理员对评价要素的增删查改操作。图5.6资源管理模块d.信息统计课时统计,管理员对每个班级的课时统计。办班情况统计,管理员对办班的统计。教员评价统计,管理员进行学员对教员评价结果的统计。学员成绩统计,管理员对学员的成绩统计。图5.7信息统计模块5.2数据库设计数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效率的运行环境,包括数据库数据的存取效率、数据库存储空间的利用率和数据可系统运行管理的效率。底层数据库设计的好坏直接决定着系统中程序的设计和运行,所以对数据的设计需要仔细的讨论和研究,底层的数据库设计直接影响程序的设计和系统的运行和显示。5.2.1数据库表ER图数据中所有的类之间通过属性之间的联系,如下图5.8所示。以办班计划为中心,展开数据的关联和设计,数据库表的关联之间的关系直接设计到系统的逻辑设计与实现的方式,本系统中所有的页面和流程都与数据表息息相关,功能的实现好坏取决于表之间的关联和表的设计,设计的原则就是高内聚、低耦合。下图所示的数据表之间的ER图,清晰的展示出数据库中表之间的联系与属性之间联系。图5.8数据表ER5.2.2数据库的设计数据库设计的目的是为用户和系统提供一个信息基础设施和高效率的运行环境。高效率的运行环境包括:数据库数据的存取效率、数据库存储空间的利用率和数据库系统运行管理的效率等。针对本系统给定的应用环境,设计数据库逻辑模式和物理结构,建立数据库,能有效的管理数据,满足系统和用户的应用需求。现将本系统的数据库中的表设计和说明如下表5.1。英文表名中文表名英文全称备注Admin管理员Admin管理员帐号ClassT班级表ClassTClassPlan办班计划表ClassPlanReplaceLesson代课表ReplaceLessonClassRoom教室表ClassRoomTeacher教员表TechTechTrainType教员培训类型TechTrainTypeTeachEvl教员评价表TeachEvlCourse课程表CourseCousSample课程样表CousSampleTrainType培训类型表TrainTypeTrainTypeClass培训类型级别表TrainTypeClassPeaceTimePracRes平时实习成绩表PeaceTimePracResEvlFactor评价要素表EvlFactorOtherCourse其它课表OtherCourseJourney日程表JourneyEquFeb设备信息反馈表EquFebLab实验室表LabLabTrainType实验室培训类型表LabTrainTypeStudent学生表StudentStuResult学生成绩表StuResultStuDiscip学生纪律表StuDiscipTotalEvl总体评价表TotalEvlFunction_list跳转表Function_list全部的跳转链接表5.1数据表培训类型TrainType的属性只有编号id和类型trainType。对于培训类型来讲它是可以进行增删改的,这个需要管理员来设置和创建这个具体的内容,对于学员他需要知道他培训那个类型,对于教员需要知道所带课班级的培训类型,这个涉及整个系统,需提前建表。教室ClassRoom主要设计属性:教室名classRoomName、座位数seatNum、教室编号roomNum、状态status等。对于教室ClassRoom,classRoomName座位教室的主键,对于创建班级和开班时必须给和学员制定教室,教室有自己的属性:教室名、座位数、教室编号、状态,座位数要确定容纳的学生数,状态则是说明这个教室是否被使用,空闲还是正在被使用,当然当一个班级培训完成后,这个属性需要管理员去修改。办班计划ClassPlan属性包含:班级编号、培训级别,以及教室、实验室、时间、负责老师等。办班计划流程图5.9所示:图5.9ClassPlan流程图5.2.3数据库数据结构设计ER模型中包含了“实体”、“联系”和“属性”等三个基本成分。实体是客观世界中存在的且可相互区分的事务。联系是指在客观世界中的事物之间的联系。属性事实体或联系所有的性质。通常一个实体由若干个属性来刻画。现将几张数据表的详细设计显示如下:以学生表Student的设计和实现。作为学生他具有姓名、编号、性别、年龄、联系方式、班级、登录的用户名和密码,以及状态等的属性。其中以stuId为主键,来设计学生表,其中对于学生来讲班级号classNo是外键,在学生查询课程表查询、日程表查询、班级查询等地方它是主键来查找信息的,但是在通讯录查询、成绩查询等的时候它又是以学生的编号stuId来查询的。loginName、loginPwd是学员在登录时的用户名和密码。图5.10StudentER教员表Teacher的属性和码的设计。作为教员他应该具有的属性为教员姓名、性别、学历、职责、联系方式、状态、登录的用户名和密码等的属性。以teacherName为主键,在教员的通讯录查询中是以教员的姓名teacherName来查询的,还有这个教员的学历水平,职责,联系电话等的信息,loginName、loginPwd是教员用来登录系统所使用的用户名和密码,teacherState则可以指出这个教员是否带课,这个在办班计划和排课的时候会用到。图5.11TeacherER实验室Lab,它具有的属性:实验室名、座位数、最大座位数、可用座位数,一是PC机数和状态等。实验室对于培训来说它是学生动手做实验的地方,每创建一个班级它就需要给这个班级分配一个实验室,然而对于实验室根据培训类型,它有相关的实验室名,需要知道这个实验室有多少个座位,有多少台电脑,可以坐多少人,有多少台电脑可以使用等等的问题需要实验室这张表来提供,供管理员创建班级时座位参考。然而这个是变化的,电脑可以修好,也可以增加电脑的数量和座位数,所以管理员需要去修改它。Status状态则是这个实验室是否被使用了。图5.12LabER6详细设计概要设计实现了系统需求完成的程序模块设计问题。其中包括把系统划分成若干个模块、决定各个模块的功能、数据表的设计和数据库ER设计等。在详细设计阶段主要需要确定如何具体的实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程序语言书写的程序,根据模块之间的逻辑关系,设计出全部必要的过程细节,给与清晰的表达。确定处理流程、总体结构、模块外部设计,设计系统的结构设计,逐个模块的程序描述。6.1系统业务流程分析与具体实现对于改系统的设计和实现。流程设计是很重要的一个内容,设计和完成改系统,改如何运行呢?需要对系统的业务流程有很清晰的认识。对于系统的核心设计办班计划,从实现的系统截图可以看出:在办班之前必须完成培训类型、培训级别、教室、教员、实验室和培训时间的设计和实现,数据库有了数据才能进行办班计划的开班。图6.1办班计划培训类型的设计和实现,由培训类型的属性决定和需求分析和概要设计的功能和实现决定。对于培训类型,管理员可以对其进行增删操作。使得适应公司的变化,对新产品的出现需要新设置培训类型时,可以进行增加培训类型。其次之后才有实现的系统的其余功能。例如班级管理、排课管理、报道管理、课程样表、评价要素管理和信息查询和信息统计的功能实现。我主要负责信息查询和信息统计两个模块,所以对信息查询中的通讯录查询和信息统计中的课时统计的业务流程做以下的详细介绍。通讯录查询的前提条件是系统可以正常运行,已经添加了教员、学员和实验西安工业大学毕业设计(论文)室,创建了培训类型和级别。已经有班级开班。通讯录查询的业务流程如下图

温馨提示

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

评论

0/150

提交评论