基于jsp和sql的实验室网上预约系统.docx
- 文档编号:8212017
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:25
- 大小:83.10KB
基于jsp和sql的实验室网上预约系统.docx
《基于jsp和sql的实验室网上预约系统.docx》由会员分享,可在线阅读,更多相关《基于jsp和sql的实验室网上预约系统.docx(25页珍藏版)》请在冰豆网上搜索。
基于jsp和sql的实验室网上预约系统
摘要
当今时代是飞速发展的信息时代,在各行各业中都离不开信息处理,这是计算机应用系统开发被广泛应用的一个外部环境。
现在广大学校的内部网络建立后,为不断满足广大用户对信息的高度共享、信息的即时发布和实现各种内部事务信息化管理的需求,学校在通用信息平台上也构筑了不少高效实用的应用系统,实验室预约系统就是应广大师生的需求而建立起来的。
本文论述了网上实验预约系统的开发全过程。
对网上实验预约系统的当前技术及发展前景、开发工具作了简单的介绍,然后对实验预约系统进行了需求分析、划分功能模块并对各个功能模块进行设计、最后就系统实现和关键技术作了详细的说明。
其主要功能有:
查看实验室当前状态、申请实验预约、取消未被处理的预约;超级管理员可以添加预约实验和固定实验、管理用户信息和实验室信息。
为完善实验预约系统的完备性,本系统还提供了用户修改个人信息和留言求助功能,超级管理员也可以添加普通管理员。
本设计采用了Microsoft公司的server2000数据库作后台和Sun公司倡导的JSP动态网页技术作前台。
采用JDBC技术访问数据库。
系统操作简单,界面友好,运行比较稳定。
关键词:
实验预约;数据库;JSP
关键字:
互联网,企业,JSP,
Abstract
Thepresenteraisanerawithrapiddevelopmentofinformation.Inallwalksoflife,informationprocessingcannotbeseparated,whichisanexternalenvironmentforcomputerapplicationsystemsdevelopmentandwideuse.Nowtheschoolsinternalnetworking,inordertosatisfytheneedsofusersininformationhighlysharing,informationimmediatedisseminationandachievementofinternalaffairsinformationmanagement,schoolinformationsetsupmanymuch-practicalapplicationsinaplatform.Laboratorybookingsystemisestablishedtotheneedsofteachersandstudents.
ThispaperdiscussesaboutthewholedevelopmentprocessoftheOnlinebookingsystem.Firstly,itbriefsonthecurrentexperimentaltechniques,thedevelopmentprospectsandthedevelopmentofasimplepresentationtools.Andthendiscusstherequirementanalysisoftheonlinebookingsystem,thevariousfunctionalmodulesandthedesignofthem.Finally,explainstherealizationofthissystemanditskeytechnologyindetail.Itsmainfunctionsare:
toseethecurrentstateofthelaboratory,forexperimentsbooking,cancellationoftheappointmentwhichhasnotbeenaddressed.Supermanagerscanaddappointedandfixedlaboratoryexperiments,usersinformationandlaboratorymanagementinformation.Forimprovingthecomprehensivenature,thesystemalsoprovidesinformationchangefunctionandvoicemailforhelpforindividualusers.Andsupermanagerscanalsoaddgeneralmanager.
ThedesignadoptsMicrosoftserver2000databaseasthebackground,Suncompany’sJSPdynamicwebtechnologyasproscenium,anduseJDBCtechnologyforvisitingdatabase.Simpleoperation,friendlyinterface,andstablecirculationareitscharacteristics.
Keywords:
Booking_labrary;Database;JSP
目录
摘要I
AbstractII
1需求分析1
1.1项目背景1
1.2项目设计原则1
1.3.1服务性原则1
1.3.2品牌性原则1
1.3.3经济性原则1
1.3.4扩充性原则2
2可行性分析3
2.1技术可行性3
2.1.1动态网站技术介绍3
2.1.2程序语言的选择3
2.1.3语言优势5
2.1.4操作可行性6
2.2环境可行性分析6
2.2.1软件环境6
2.2.2硬件环境7
2.3系统结构可行性分析7
2.3.1B/S模式简介7
2.3.2B/S模式的优点7
3系统设计9
3.1项目设计9
3.1.1管理员模块9
3.1.2学生模块11
3.1.3老师模块12
3.2数据库设计13
3.3开发架构15
3.3.1软件开发架构的意义15
3.3.2JSf架构简介16
3.4数据持久层19
3.5.1持久化数据19
3.5.2持久化技术20
4系统实现22
4.1实现效果22
4.1.1管理员主页面22
4.1.2学期管理22
4.3数据持久层22
4.4业务逻辑层23
4.5控制处理层23
4.6技术难点23
4.6.1时间格式23
4.6.2中文乱码23
4.6.3安全性23
5系统测试24
5.1测试的定义及目的24
5.2测试的原则24
5.3测试的方法24
5.3.1界面测试24
5.3.2功能测试25
5.3.3需求测试26
5.3.4性能测试26
5.4测试中其他要注意的地方26
5.5实验室预约系统的测试27
总结28
致谢29
参考文献30
1需求分析
1.1项目背景
全校开放性实验室预约系统是一个让学生通过网上报名预约实验的系统。
由于学生对实验的需求很多,而教师人数有限,这使得学生做实验时遇到问题不能得到及时解决,从而导致实验很难继续下去,这样实验难以达到预期目的。
因此,必须准确地了解学生对实验的内容和时间等的要求,才能有效地安排教师辅导。
“全校开放性实验室预约系统”通过学生网上预约实验的方式,为实验室妥善安排提供可靠的依据。
1.2项目设计原则
1.3.1服务性原则
作为校园实验室运作的一个组成重要部分,服务于学校的对学生和老师的试验方便性,服务于学生与老师、老师与管理员沟通渠道的建立,完善实验室服务体系,创造更多的学习机会,为实验室管理员提供便利的操作。
1.3.2经济性原则
建立适合校园自身需求的网络平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活以满足高度用户化的需求,节省网站建设成本,并确保其较好的拓展性和开放性;同时网站具有基于WEB界面的管理后台,企业能够自主的对网站中大部分内容作更新、修改操作,节省了网站的运营成本,提高了信息更新、传播效率。
1.3.3扩充性原则
网站的整体规划及框架设计是具可扩充性的,前台页面的设计能保证校园网站在增加栏目后不会破坏网站的整体结构。
后台数据库的设计具有高度的扩充性,校园能够根据需要对栏目、类别的增、删、修改。
2可行性分析
2.1技术可行性
2.1.1动态网站技术介绍
Internet起源于20世纪60年代的美国,它在近几年迅速风靡全球,其根本原因不仅在于她拥有卓越的国际通信功能,更在于它拥有巨大的信息资源.所谓的Internet是指由分布在全世界成千上万的计算机网络遵循一定的通讯协议,并相互联系在一起而形成的国际互连网络,也就是说,Internet是建立和使用这些网络的人群,群体,公司以及各种网络资源的集合体.
随着网络技术的不断发展,单纯的静态页面已经不能满足发展的需要,因为静态页面是用单纯的HTML语言组成的,它没有交互性.因此,为了满足实际的需要,许多网页文件扩展名不再只是”htm”,”html”,出现了以”php”,”asp”,”jsp”,”shtml”等为后缀的网页文件,这些都是采用动态网页技术制作出来的.
2.1.2程序语言的选择
·CGI
CGI(CommonGatewayInterface,通用网关接口).首先,客户端(即Web浏览器)根据某资源的URL(UniformResourceLocator,统一资源定位器)向Web服务器提出请求,Web服务器的HTTPDaemon(守护进程)将此请求的参数通过标准输入stdin和环境变量传递给指定的CGI程序,并启动此应用程序进行处理,如要存取数据库服务器上数据库的数据,则向数据库服务器发出处理请求,数据库服务器将执行结果返回给CGI程序,CGI程序处理结果通过标准输出stdout返回给HTTPDaemon进程,再由HTTPDaemon进程返回给客户端,由浏览器解释执行,将最终结果在用户面前显示.CGI允许Web服务器运行外部应用程序,以通过外部程序来访问数据库等一些外部资源,并产生HTML文档给浏览器.但每次请求CGI程序都要重新启动程序,影响了响应的速度,且CGI程序不能被多个客户请求共享,影响了各种资源的使用效率.为了克服CGI的这些缺点,一些Web服务器厂商开发出了专用的API(ApplicationsProgramInterface应用程序接口),这样就允许程序员编写程序来扩展服务器的功能.API相对于CGI与Web服务器的结合更加紧密,占用的资源较少,运行的效率大有提高,安全性与保护性更好.但是开发API应用程序比开发CGI应用程序复杂得多,要求程序员掌握更多的计算机软件知识,且各种API之间的兼容性不好,业界没有一个统一的标准,使得API程序只能工作在专用的Web服务器与操作系统之上.编写CGI的程序设计语言有许多种,常用的有C,PERL,VisualC++等,由于对程序员的要求较高,且编写与调试比其它队编程技术困难,故近年来基于B/S的信息系统工程时间中已很少被采用.
·ASP
ASP的程序比HTML更方便而更富有灵活性.是在Web服务器端运行,运行后再将运行结果以HTML格式传送至客户端的浏览器.因此ASP与一般的脚本语言相比要安全得多.ASP最大的好处就是可以包含HTML标签,也可以直接存取数据库及使用无限扩充的ActiveX控件,用户可以直接使用ActiveX控件,调用对象方法和属性,以简单的方式实现强大的交互功能.但ASP技术也并非完美无缺,由于它基本上是局限于微软的操作系统平台,主要的工作环境是微软的IIS应用程序结构,又因ActiveX对象具有平台特性,所以ASP技术要实现在跨平台Web服务器上工作,不是很容易.Microsoft的ASP技术目前已发展到.NET版.对很多人来说,用ASP来创建Windows服务器平台上的动态Web网页,整个站点和基于Web的应用程序已经成为及其自然的方法.在浏览器地址栏中,文件扩展名.asp同表示动态创建的网页的文件扩展名.pl或.cgi一样,已被浏览者所接受.开发ASP程序,常常先设计静态网页的栏目格式和排版形成HTML语言,接着在HTML的基础上添加脚本程序,形成ASP程序后再实现动态的Web网页.在ASP的程序开发中,它所用的脚本语言是JavaScript和VBScript,在默认情况下使用的是VBscript,它是VB程序设计语言的一个子集,语法与VB基本相同.ASP中的ADO对象用来执行与数据库相关的操作,ADO再以OLEDB或ODBC的方式访问数据库,在.NET版本中这一对象称为ADO.NET.
·PHP
PHP即HypertextPreprocessor(超文本预处理器),它是当今Internet上最为火热的脚本语言,其语法借鉴了C,Java,Perl等语言,而且只需要很少的编程知识就能使用PHP建立一个真正交互的Web站点.它与HTML语言具有非常好的兼容性,使用者可以直接在脚本代码中加入HTML标签或者在HTML标签中加入脚本代码从而更好地实现页面控制.PHP提供了标准的数据库接口,数据库连接方便,兼容性更强,扩展性强,可以进行面向对象编程.但是PHP对组件的支持不够,扩展性差,常用它与免费的数据库系统MySQL协同一起用来构建中小型网B/S应用大网站或信息系统.
·JSP
JSP(JavaServerPages)是由Sun公司倡导,许多别的公司参与一起创建的一种新动态网页技术标准,类似其他技术标准.在传统的网页HTML文件(*.htm,*.html)中加入Java程序片断(Scriptlet)和JSP标签,构成了JSP网页(*.jsp)Servlet/JSPContainer收到客户端发出的请求时,首先执行其中的程序片断,软后将执行结果以HTML格式响应给客户端,其中程序片断可以是:
操作数据库,重新定向网页以及发送E-Mail等等,这些都是建立动态网站所需要的功能.所有程序操作都在服务器端运行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP称为Server-sideLanguage.所以被许多人认为是未来最有发展前途的动态网站技术之一.
经过如上的程序语言的比较,PHP功能相对简单,不适合作大程序,而CGI效率相对较低,所以也不考虑,因为该系统并没有原有的基础平台需要扩展,也不需要与其他系统进行太多的交互,所以使用J2EE的模式并不能够体现出J2EE本身的优势,而JSP又是J2EE的核心技术之一,可以随时升级为J2EE程序,,这里暂时不考虑采用J2EE,这样只需要在ASP和JSP中进行选择.在进行了诸多因素的比较之后,最终认为目前这个阶段比较合适的是JSP,,而选择Struts架构作为开发的主体框架,选用Hibernate作为数据持续性处理层,则是考虑到了其高速的开发效率,及代码重用性高,易于维护等各种优势.其最终目的是希望提高系统底层业务逻辑的可重用性,增加系统的可扩展性,降低系统维护成本.
2.1.3语言优势
·将内容的生成和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面.使用JSP标识或者小脚本来生成页面上的动态内容.生成的内容的逻辑被封装在标识和JavaBeans组件中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面而不影响内容的生成.
·一次编写,到处运行
作为Java平台的一部分,JSP拥有Java编程语言”一次编写,到处运行”的特点,随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,但并不影响当前的应用.
·JSP的平台适应性更广
这是JSP比ASP的优越之处,几乎所有的平台都支持Java,它们可以在任何平台下通行无阻.虽然NT的OS占据了很大的市场的份额,但在服务器方面UNIX的优势仍然很大.从一个平台移植到另一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标注的字节码与平台无关.
·健壮的存储管理和安全性
由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译为JavaServlet,JSP页面就具有Java技术的所有优点,包括健壮的存储管理和安全性
·数据库连接技术
很多的OS中都带有JDBC驱动程序,Java就通过JDBC与数据库连接,执行查询,提取数据等操作.Sun公司还提供了JDBC-ODBC的桥连方式,因此Java也可以访问带有ODBC驱动的数据库,目前大多数数据库系统都带有ODBC驱动,所以Java能访问诸如Oracle,Sybase,MSSQLServer和Access等类型的数据库.
2.1.4操作可行性
对于用户来说,本系统只要求使用者掌握一定的上网经验,经过仔细设计和测试之后的系统具有操作简单,方便灵活等优点,足可以满足各种用户的不同需求,同时也方便了公司的内部管理。
管理人员及用户一定会在短时间内掌握并熟练使用。
只要动一动鼠标键盘就可以达到想要的效果。
2.2环境可行性分析
2.2.1软件环境
·操作系统:
Win2kServersp4
·数据库:
MicrosoftAccess2000
·Web服务器:
TOMCAT
·IDE;Eclipse3.1.1+Myeclipse4.1.1GA+Lomboz+emf,Dreamweaver8
·外部包:
Struts.jarHibernate.jar
2.2.2硬件环境
AMDAthlon643000+,KingMaxPC3200512MB×2,GainwardNV35XT
SeagateSATA8M120GB×2
2.3系统结构可行性分析
2.3.1B/S模式简介
本系统采用B/S模式。
B/S(Browser/Server)结构即浏览器和服务器结构。
它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。
这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。
以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。
它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
2.3.2B/S模式的优点
·维护和升级方式简单
目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性.对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护.无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享.所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向.今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的.因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器.
·成本降低,选择更多
大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位.现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高.所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行.
比如说很多人每天上“网易”网,只要安装了浏览器就可以了,并不需要了解“网易”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统.
3系统设计
系统设计是在系统分析的基础上由抽象到具体的过程.主要目标是将系统分析阶段所提出的反映了信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案,为下一阶段系统实施提供必要的技术资料,应符合系统性,灵活性,可靠性,经济性的要求。
3.1项目设计
3.1.1管理员模块
学期管理(TermManage)
学期的属性包括开始日期、结束日期,学期名。
学期名形如“2007-2008第一学期”。
课程项目管理(ExpManage)
按学期、课程管理课程项目,一个课程对应不同的课程项目。
课程项目批次管理(ExpBatch)
按学期、课程、课程项目管理批次。
一个老师在一段时间只能参与一个课程项目。
一个课程项目,有几个不同的批次。
批次包括是否已确认属性。
学生预约情况管理(ExpBooking)
在这个模块可以针对某个批次,进行预约学生的添加和删除
老师管理(TeacherManage)
老师管理包括姓名,性别,系别,科目,密码
学生管理(StudentManage)
按班级管理学生。
管理员密码设置(PasswordSet)
管理员登入密码
使用说明
学期管理
管理员可以添加、修改、删除学期。
特别注意:
只能有一个学期为活动学期,学生只能预约这个学期的实验项目;老师只能查看、编辑这个学期的实验批次。
实验项目管理
一个学期可以有不同的实验科目,一个实验科目又有不同的实验项目。
管理员可以添加、修改、删除实验项目.
特别注意:
在输入实验项目时,遇到没有在实验科目列表中出现的实验科目,直接手动输入,保存后就自动添加到列表中。
实验项目批次
一个实验项目可以分为不同的实验批次进行。
管理员可以针对某个实验项目进行实验批次的添加、修改、删除。
一个实验批次,可以有多个学生参与,但不能超过实验批次的容量。
管理员可以对某个实验批次里的学生进行添加、评分、删除操作。
特别注意:
一个老师同一个时间点(同一日期,同一节次)只能进行一个实验项目。
老师管理
管理员可以添加、修改、删除老师信息。
特别注意:
老师的平台账号不能为空而且不能重复,因为老师登入系统就是用这个账号。
学生管理
管理员可以添加、修改、删除学生信息。
特别注意:
学号不能为空而且不能重复.学生登入时候使用学号登入.
3.1.2学生模块
浏览、预约课程项目模块。
一个学生在一段时间只能参与一个课程项目,一个学生只能对某个课程项目预约一次
1、使用说明
学生可以浏览、预约当前活动学期的实验科目的实验批次;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 jsp sql 实验室 网上 预约 系统