基于web的实验室预约系统文档格式.docx
- 文档编号:1008343
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:43
- 大小:913.67KB
基于web的实验室预约系统文档格式.docx
《基于web的实验室预约系统文档格式.docx》由会员分享,可在线阅读,更多相关《基于web的实验室预约系统文档格式.docx(43页珍藏版)》请在冰点文库上搜索。
关键词:
JSP;
MySQL;
实验室预约系统
ABSTRACT
WiththepopularizationofInternet,usingtheInternetplatformasauniversitylabreservationsystemhasbecomeadirection,whichcanmakehighereducationmoreeffectiveandefficient,andmakemaximumuseofthelabequipment,andmaketeachers'
andstudents'
learninglifemoreeffectivetoo.
ThisthesisrealizesanonlinelaboratoryreservationsystembasedonB/S.Thesystemprovidesthelaboratoryappointment,auditandmanagementfunctions.Normaluserscanmanagetheirpersonalinformation,changepassword,viewanddownloadlaboratoryschedule,makeanappointmenttodesignatedlaboratory,viewhisreservationstatusandsoon.Theadministratorcanmanageallnormalusersunderthiswebsite,add,modifyanddeletefornormalusers,andcanmanageallthelaboratoryinformation,add,modifyanddeletethelaboratory,andcanauditappointmenttodecidetogiveanormalusergreenlightornot;
normaluserscanalsoregisterthesystembyhimself.
ThesystemwasdevelopedbyJSPtechnology,withIbatisandStruts2framework,backgrounddatawassupportedbyMySQLdatabase.ThestructurebasedonB/Sisclear,anditisconvenienttooperateandtheinterfaceiselegant.Inconclusion,thewebhassomepracticalvalue.
Keywords:
JSP;
MySQL;
labreservationsystem
目 录
第一章 绪论 1
1.1基于Web的实验室预约系统 1
1.2基于web的实验室预约系统的意义 1
1.3论文的组织 1
第二章 开发平台的介绍 3
2.1网站后台技术 3
2.1.1Java 3
2.1.2JSP 3
2.1.3JDBC 4
2.1.4Struts2 5
2.1.5Ibatis 6
2.1.6JXL 7
2.2网站前端技术 7
2.2.1JQuery 7
2.2.2AJAX 7
2.2.3BootStrap 7
2.2.4Cufon 8
2.3其它相关技术 8
2.3.1MySQL 8
2.3.2Tomcat 8
2.3.3Eclipse 9
2.3.4Navicat 10
第三章 系统整体规划 11
3.1系统总体功能设计 11
3.2系统的功能模块 12
3.2.1登录注册模块 12
3.2.2管理员管理模块 13
3.2.3用户管理模块 13
3.2.4用户预约模块 15
第四章 数据库设计与实现 16
4.1数据库的设计 16
4.2系统数据库设计 16
4.2.1用户表 17
4.2.2实验室表 17
4.2.3实验室预约表 18
4.3数据库的连接 18
第五章各个功能模块的设计与实现 21
5.1登录注册模块的设计与实现 21
5.1.1用户注册模块 21
5.1.2用户登录模块 22
5.2管理员管理模块的设计与实现 23
5.2.1普通用户管理模块的设计与实现 23
5.2.2实验室管理模块的设计与实现 23
5.2.3实验室预约管理模块的设计与实现 24
5.3用户管理模块的设计与实现 25
5.3.1密码修改模块的设计与实现 25
5.3.2基本资料修改模块的设计与实现 26
5.4用户预约模块的设计与实现 27
5.4.1课表查询下载模块的设计与实现 27
5.4.2实验室预约模块的设计与实现 28
5.4.3预约状态查询模块的设计与实现 29
5.5系统性能分析和总结 30
5.5.1系统的优点 30
5.5.2系统的改进方向 30
结束语 32
致 谢 33
参考文献 34
南京邮电大学2015届本科生毕业设计(论文)
第一章 绪论
实验课是各个高等学校教学环节不可缺少的一部分,实验教学具有理论与实践紧密结合,交互性强,人机一体,教学内容更新快的特点,已成为推动素质教育,培养学生创新能力、实践能力和科学素养的重要阵地。
随着实验室开放规模和开放范围的不断扩大,实验室的开放工作日显繁琐,工作量日益增加,这一状况甚至成为了阻碍实验室开放工作发展的绊脚石,急需出台解决方案。
在计算机技术尤其是网络技术飞速发展的今天,实行网络化管理可提高工作效率,降低人、财、物资源成本。
如何充分利用学校现有的实验室资源是一个排课难题,也是本课题研究的主题。
本毕业设计拟对开放性实验预约管理系统进行设计与实现,以方便管理,提高效率。
1.1基于Web的实验室预约系统
现在B/S模式的设计与研发在网上十分流行,大学学校的资源也都通过这种形式展现出来,实验室预约系统就是各种B/S模式之中最明显的一个例子。
实验室预约系统是通过服务器和客户端浏览器来实现数据的传输,它通过客户端实现管理、申请、提交用户信息,来完成实验项目的预约、查询、管理等各种功能。
随着计算机应用水平和Internet网的迅速发展,各种资源实现网络化,已经成为必然趋势。
实验室预约系统利用这个优势,来替代繁琐的人工操作,从而既改变了过去实验室传统的管理模式又提高了办事的效率.
1.2基于web的实验室预约系统的意义
实验室预约系统具有很高的实用性,使用JSP技术,结合
JQuery、BootStrap、Struts2、Ibatis框架等进行系统开发,页面之间的交互灵活,页面本身简洁实用。
该系统便于用户根据自身空闲时间和实验室空闲情况实时预约,管理员可以根据用户身份和实验室现状审核用户的预约,从而及时避免了用户不必要的花费以及工作人员大量的时间浪费。
通过MySQL数据库,记录用户信息、实验室信息、实验室预约信息等,对这些信息进行管理,普通用户可查看自己的个人信息,以及自己的预约审核状态,克服了以往不能及时得到预约是否成功的信息的弊端。
本系统采用HTML+CSS+JQuery+BootStrap+Cufon进行前端页面布局,后台逻辑使用Struts2+Ibatis+JXL框架开发实现。
系统界面简洁、友好,易于操作,设计的时候考虑到用户的使用习惯,提升了系统的实用性。
1.3论文的组织
本论文主要讲述用Web开发实验室管理系统的方法,另外比较详细地说明了
-37-
系统的框架设计。
本论文共分六章:
第一章:
本章讲述了实验室管理系统的课题背景,目前实验室管理系统的现状。
通过分析可以知道,实验室管理系统应用性强,对提高实验室使用效率,提高教学质量都有很大的帮助。
第二章:
本章讲述了开发该系统所需要的工具,并对这些工具的功能和用法进行了简单介绍。
第三章:
本章介绍了开发该系统必须做的工作:
需求分析和总体设计。
需求分析是开发本系统前的工作,总体设计是对软件开发的过程上的概括。
第四章:
本章介绍了数据库开发设计与实现。
第五章:
本章介绍了各个功能模块的具体设计过程和实现,并分析了系统的整体性能。
第二章 开发平台的介绍
本系统基于Windows7+Eclipse+MySQL+Chrome环境,以Windows7为操作系统,以Eclipse为开发软件、以MySQL为后台的数据库服务器,以Chrome作为浏览器,编程语言为Java。
2.1网站后台技术
2.1.1Java[1]-[5]
Java编程语言的风格十分接近C、C++语言。
Java是一个纯的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承
(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。
在Java SE 1.5版本中,
Java又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
Java不同于一般的编译执行计算机语言和解释执行计算机语言。
它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。
不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了Java程序的运行效率。
但在J2SE1.4.2发布后,Java的执行速度有了大幅提升。
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。
全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。
“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:
Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
2.1.2JSP[6]-[9]
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页
HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成
JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
2.1.3JDBC[10]
JDBC(JavaDataBaseConnectivity,Java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。
换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用,将
Java语言和JDBC结合起来使程序员只须写一遍程序就可以让它在任何平台上运行。
Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。
JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。
作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。
JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。
JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。
JDBCTM是一种用于执行SQL语句的JavaTMAPI,它由一组用Java编程语言编写的类和接口组成。
JDBC为工具/数据库开发人员提供了一个标准的API,使他们能够用纯JavaAPI来编写数据库应用程序。
有了JDBC,向各种关系数据库发送SQL语句就是一件很容易的事。
换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数
据库又专门写一个程序,为访问Informix数据库又写另一个程序,等等。
您只需用JDBC API写一个程序就够了它可向相应数据库发送SQL语句。
而且,使用
Java编程语言编写的应用程序,就无须去忧虑要为不同的平台编写不同的应用程序。
将Java和JDBC结合起来将使程序员只须写一遍程序就可让它在任何平台上运行。
Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。
所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。
而JDBC正是作为此种用途的机制。
JDBC扩展了Java的功能。
例如,用Java和JDBCAPI可以发布含有applet
的网页,而该applet使用的信息可能来自远程数据库企业也可以用 JDBC 通过
Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有
Windows、Macintosh和UNIX等各种不同的操作系统)。
随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。
MIS管理员们都喜欢Java和JDBC的结合,因为它使信息传播变得容易和经济。
企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。
新程序的开发期很短。
安装和版本控制将大为简化。
程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。
对于商务上的销售信息服务,Java和JDBC可为外部客户提供获取信息更新的更好方法。
2.1.4Struts2[11]-[12]
Struts2是Struts的下一代产品,是在Struts1和WebWork的技术基础上进行了合并的全新的Struts2框架。
其全新的Struts2的体系结构与Struts1的体系结构差别巨大。
Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。
虽然从Struts1到Struts2有着太大的变化,但是相对于WebWork,Struts2的变化很小。
2.1.4.1Struts2处理流程
客户端提交一个(HttpServletRequest)请求。
请求被提交到一系列(主要是
3层)的过滤器(Filter),如(ActionContextCleanUp、其他过滤器(SiteMesh等)、
FilterDispatcher)。
注意:
这里是有顺序的,先ActionContextCleanUp,再其他过滤器(OthterFilters、SiteMesh等),最后到FilterDispatcher。
FilterDispatcher是控制器的核心,就是MVC的Struts 2实现中控制层(Controller)的核心。
FilterDispatcher询问ActionMapper是否需要调用某个Action来处理这个
(HttpServlet Request)请求,如果ActionMapper决定需要调用某个
Action,FilterDispatcher则把请求的处理交给ActionProxy。
ActionProxy通过
ConfigurationManager(struts.xml)询问框架的配置文件,找到需要调用的Action
类。
例如,用户注册示例将找到UserReg类。
ActionProxy创建一个
ActionInvocation实例,同时ActionInvocation通过代理模式调用Action。
但在调用之前,ActionInvocation会根据配置加载Action相关的所有Interceptor(拦截器)
。
一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果result。
2.1.4.2OGNL
OGNL是Object-GraphNavigationLanguage的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。
它使用相同的表达式去存取对象的属性。
OGNL可以让用户用非常简单的表达式访问对象层,例如,当前环境的根对象为user1,则表达式person.address[0].province可以访问到user1的person属性的第一个address的province属性。
这种功能是模板语言的一个重要补充,像 JSP2.0、velocity、jelly等等,都有类似的功能,但是OGNL比它们完善得多,而且以一个独立的lib出现,方便用户构建自己的框架。
WebWork2和现在的Struts2.x中使用OGNL取代原来的EL来做界面数据绑定,所谓界面数据绑定,也就是把界面元素(例如一个textfield,hidden)和对象层某个类的某个属性绑定在一起,修改和显示自动同步。
和Struts1.x的formbean相比,这样做的好处非常明显:
在WebWork中不需要为每个页面专门写formbean,可以直接利用对象层的对象。
例如在对象设计中,用户的User和Person是分开的,而一个注册用户界面需要填写两者的内容,在
WebWork中,就可以保持后台的对象结构,把属于用户属性的界面元素用
user.person.xxx绑定,把属于账号属性的界面元素用user.xxx绑定。
2.1.4.3JSON
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
它基于
JavaScript(StandardECMA-2623rdEdition-December1999)的一个子集。
JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯
(包括C,C++,C#,Java,JavaScript,Perl,Python等)。
这些特性使JSON成为理想的数据交换语言。
易于人阅读和编写,同时也易于机器解析和生成。
2.1.5Ibatis[13]
Ibatis是数据映射器(数据映射器层:
用于在对象和数据库之间搬运数据,同时保证对象、数据库和数据映射器层本身相对独立)。
Ibatis不是直接把类映射为数据库
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 web 实验室 预约 系统